Kotlin流中的RxJava行为主体#onError(Throwable)等价物
我正在将一些RxJava代码转换为项目中的Kotlin流 我遇到一段代码,其中调用了Kotlin流中的RxJava行为主体#onError(Throwable)等价物,kotlin,rx-java,rx-java2,kotlin-flow,rx-java3,Kotlin,Rx Java,Rx Java2,Kotlin Flow,Rx Java3,我正在将一些RxJava代码转换为项目中的Kotlin流 我遇到一段代码,其中调用了BehaviorSubject#onError(Throwable) 我没有找到任何方法来处理流对象 // RxJava val behaviorSubject = BehaviorSubject.create<Int>() behaviorSubject.onError(RuntimeException()) // Kotlin Flow val mutableSharedFlow = Mutab
BehaviorSubject#onError(Throwable)
我没有找到任何方法来处理流
对象
// RxJava
val behaviorSubject = BehaviorSubject.create<Int>()
behaviorSubject.onError(RuntimeException())
// Kotlin Flow
val mutableSharedFlow = MutableSharedFlow<Int>()
mutableSharedFlow.???
//RxJava
val behaviorSubject=behaviorSubject.create()
behaviorSubject.onError(RuntimeException())
//科特林流
val mutableSharedFlow=mutableSharedFlow()
可变共享流。???
有什么办法吗?来自:“SharedFlow不能像BroadcastChannel那样关闭,也不能表示失败。如果需要,所有错误和完成信号都应该显式具体化。”
因此,您可能必须创建一个数据类,其中包含值和异常的插槽,然后使用takeWhile
停止它
(旁注:我碰巧有一个for kotlin流,它确实提供了。)来自:“SharedFlow不能像BroadcastChannel那样关闭,也不能代表失败。如果需要,所有错误和完成信号都应该显式实现。”@akarnokd非常感谢您的回复。经过进一步研究,我昨天意识到了这一点。问题是我想使用不同的结构,但我不应该这样。你介意把你刚写的东西贴出来,这样我就可以把它标为正确答案了吗?再次感谢^^