【发布时间】:2020-07-12 10:19:25
【问题描述】:
我看过一些教程,其中写入 Room 是在使用 viewModelScope 启动的协程中执行的,所以当 ViewModel 被销毁时它会被取消。但我希望无论如何都要写入数据。所以我想在一个不依赖于Activity生命周期的范围内启动这个协程。
class MyApplication : Application() {
val applicationScope = CoroutineScope(SupervisorJob())
}
如果我使用这个范围在 ViewModel 中启动一个长时间运行的协程,即使 Activity 被销毁,在协程完成之前,ViewModel 也不会被垃圾回收,这是真的吗?
【问题讨论】:
标签: android kotlin kotlin-coroutines