取消kotlin中的协程。合作取消的最佳实践

问题描述 投票:0回答:0

我使用 yield() 来帮助在被要求时尽快取消协程。我不能在协程内的挂起函数中使用 ensureActive()。 我意识到通过在循环中使用 yield() ,我减慢了协程的速度。我正在考虑将我的挂起函数包装在 withContext(Dispatchers.Default){} 中,这样我就可以使用 ensureActive() 而不是 yield()。 这是个好习惯吗?

kotlin-coroutines yield
© www.soinside.com 2019 - 2024. All rights reserved.