app*_*ano 3 kotlin kotlin-coroutines
在 MutableStateFlow 上使用值结束发出乐趣有什么区别?
fun main() = runBlocking {
val mutable = MutableStateFlow(0)
launch {
mutable.collect {
println(it)
}
}
mutable.value = 1
mutable.emit(2)
}
Run Code Online (Sandbox Code Playgroud)
emit() 是一个包装调用以设置值的挂起函数:
override suspend fun emit(value: T) {
this.value = value
}
Run Code Online (Sandbox Code Playgroud)
所以区别在于value即使不在协程中也可以设置值。emit()存在所以 StateFlow 可以从 Flow 继承。
| 归档时间: |
|
| 查看次数: |
503 次 |
| 最近记录: |