如何解决Android Job Coroutine-有时无法正常工作
在我的课堂上,我使用以下函数:
private lateinit var jumpJob: Job
private val parentJob = SupervisorJob()
private val coroutineScope = CoroutineScope(parentJob + Dispatchers.Default)
@Suppress("ControlFlowWithEmptyBody")
fun jump() {
canJump = false
jumpJob = coroutineScope.launch {
shouldFall = false
repeat(12) {
delay(25)
coordinates.y -= 10
}
delay(1000)
shouldFall = true
}
}
我使用上述功能移动PC并模拟2D游戏中的跳跃。 可能发生的情况是,在调用该函数并且进行跳转时,PG死了,因此协程没有完成其工作,实际上是“ isActive = true”和isCompleted = false“。在这种情况下,当片段重新启动未执行的作业如何在任何时间完成作业?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。