in kotlinx-coroutines-core/jvm/src/scheduling/CoroutineScheduler.kt [816:832]
fun runSingleTask(): Long {
val stateSnapshot = state
val isCpuThread = state == WorkerState.CPU_ACQUIRED
val task = if (isCpuThread) {
findCpuTask()
} else {
findBlockingTask()
}
if (task == null) {
if (minDelayUntilStealableTaskNs == 0L) return -1L
return minDelayUntilStealableTaskNs
}
runTaskSafely(task)
if (!isCpuThread) decrementBlockingTasks()
assert { state == stateSnapshot }
return 0L
}