如何解决可以使用多个收集器收集的Kotlin流或类似的东西
我尝试使用Kotlin Flow作为某种消息容器,该容器应该将此消息传递给所有观察者(收集者)。我不想故意使用LiveData,因为它需要了解生命周期。
不幸的是,我已经注意到,如果一个收集者从流中收集消息,则没有其他人可以接收它。
我可以用什么来实现“一个输入-许多输出”。
解决方法
您可以从rxJava尝试BehaviorSubject
。比可怜的kotlin.flow更舒适。似乎此链接适合您:BehaviorSubject vs PublishSubject
val behaviorSubject = BehaviorSubject.create<MyObject> {
// for example you can emit new item with it.onNext(),// finish with error like it.onError() or just finish with it.onComplete()
somethingToEmit()
}
behaviorSubject.subscribe {
somethingToHandle()
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。