Я пытаюсь запустить 2 обработчика, но трюк в том, что при прохождении первой секунды запускается первый поток, когда этот поток заканчивается (1 секунда), запускает второй поток, когда второй поток завершается (1 секунда), он снова идет с первым потоком и циклы продолжаются.
Мой подход использовал это:
val UI_HANDLER = Handler()
val UI_UPDATE_POSITION = object : Runnable {
override fun run() {
locations()
UI_HANDLER.postDelayed([email protected]_UPDATE_NEW_POSITION, 1000)
}
}
val UI_UPDATE_NEW_POSITION = Runnable {
locations()
UI_HANDLER.postDelayed(this.UI_UPDATE_POSITION, 1000)
}
однако я получаю рекурсивную проблему, любой может посоветовать мне, что я делаю не так, я ищу в Google, но безуспешно.
ммм ... вы совершенно правы, сэр.
Опубликованный вами код не требует 2 Runnables, так как вы вызываете один и тот же метод в обоих Runnables (если это так, просто создайте один Runnable вызывающий location () и установите дескриптор postDelayed (), который Runnable каждую секунду ). Итак, это весь код, связанный с этими Runnables?