Возврат данных в главный поток из бесконечного пинга

В андроид проекте, метод runPingInfo получает данные от бесконечного пинга в виде массива. Как можно после каждого пакета, полученные данные возвращать в главный поток?

fun runPingInfo(serviceHost: String):LongArray?{
Thread{
    val ex: Exchanger<LongArray>? = null
    val command = "ping"
    var commandProcess = Runtime.getRuntime().exec("$command -W 1 $serviceHost")
    commandProcess.inputStream.bufferedReader().lines().forEach {
        if (it.contains("time")) {
            val arr = getPingInfo(it)  //Array with data
            println(Arrays.toString(arr))
        }
    }

}.start()

return null

}


Ответы (0 шт):