Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kotlin流中的RxJava行为主体#onError(Throwable)等价物_Kotlin_Rx Java_Rx Java2_Kotlin Flow_Rx Java3 - Fatal编程技术网

Kotlin流中的RxJava行为主体#onError(Throwable)等价物

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

我正在将一些RxJava代码转换为项目中的Kotlin流

我遇到一段代码,其中调用了
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非常感谢您的回复。经过进一步研究,我昨天意识到了这一点。问题是我想使用不同的结构,但我不应该这样。你介意把你刚写的东西贴出来,这样我就可以把它标为正确答案了吗?再次感谢^^