如何解决恢复而不是重新启动流收集?
当给定的屏幕处于活动状态时,我有一个Flow<ScreenState>
收集。
屏幕变为非活动状态后,收集停止。
当屏幕再次变为活动状态(如何继续而不是重新启动)时,如何恢复收集? 例如。如果我的流量是0-100的计数器;在我当前的情况下,它将在每次屏幕变为活动状态时从0重新开始,我希望它从暂停之前的最后一个发出的值继续。
fun start() {
job?.cancel()
job = task?.let { task ->
manager.execute(
task,dispatcher
)
}
}
fun stop() {
job?.cancel()
job = null
}
//Manager.execute
fun <Message> execute(
task: Task<Message>,dispatcher: Dispatcher<Message>
): Job {
return scope.launch {
task.toFlow().collectLatest { message ->
dispatcher(message)
}
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。