Android 在RxKotlin中阻塞链条并继续
我在我的应用程序中有一个链接操作,其中我有一些数据的列表,我将使用Android 在RxKotlin中阻塞链条并继续,android,kotlin,rx-java2,rx-kotlin2,Android,Kotlin,Rx Java2,Rx Kotlin2,我在我的应用程序中有一个链接操作,其中我有一些数据的列表,我将使用可迭代的observable在列表中迭代,一旦迭代完成,我将执行一些不依赖于前一个列表的其他操作,因此我需要的是在这两个操作之间我需要阻止(或屏障)直到第一个完成,然后继续第二个 范例 Observable.fromIterable(listOf("A","B","C","D")) .map{ doSomeTask(it) } // I need a bloc
可迭代的observable
在列表中迭代,一旦迭代完成,我将执行一些不依赖于前一个列表的其他操作,因此我需要的是在这两个操作之间我需要阻止(或屏障)直到第一个完成,然后继续第二个
范例
Observable.fromIterable(listOf("A","B","C","D"))
.map{
doSomeTask(it)
}
// I need a blocking here, once this iteration completes i will proceed with the below task, but i don't need of toList() to block since i don't want the data,
.map{
doSomeOtherTask()
}
有人能帮我吗?如果要传播每个值,请使用
doOnNext
;如果要传播每个值,请使用doOnComplete
,或者doOnComplete
当您想在迭代结束时执行某项操作时。您可以执行以下操作:
Observable.fromIterable(listOf("A", "B", "C", "D"))
.subscribeBy(
onNext = {
doSomeTask(it)
},
onComplete = {
doSomeOtherTask()
}
)
这样你就能达到预期的效果。干杯 您可以做以下几点:
Observable.fromIterable(listOf("A", "B", "C", "D"))
.subscribeBy(
onNext = {
doSomeTask(it)
},
onComplete = {
doSomeOtherTask()
}
)
这样你就能达到预期的效果。干杯