【发布时间】:2020-05-05 05:18:10
【问题描述】:
我有一个需要延迟几秒钟的操作。我正在像这样使用调度程序和计时器:
import java.util.Timer
import kotlin.concurrent.timerTask
val timer = Timer()
sliderLastAdjusted = System.currentTimeMillis()
timer.schedule(timerTask {
val newTime = System.currentTimeMillis()
val elapsedTime = newTime - sliderLastAdjusted
if (elapsedTime > 2000) {
masterViewModel.updateLeagueProjections()
}
}, 2000)
虽然这适用于执行延迟时间的命令并阻止同一时间段内的其他命令执行,但它确实使用主线程 - 这会在更新 observables 时导致问题。
我怎样才能让它使用 MainThread?
【问题讨论】: