【发布时间】:2021-10-09 03:38:08
【问题描述】:
例如,我有 3 个来自不同端点的数据源。我想并行调用所有这些并获得第一个答案(最快),然后应该丢弃其他调用。 我知道如何使用带有Observable.amb() 的 RxJava。 如何使用 Kotlin 协程实现它? 重要的是 - 在第一个结果之后无需等待其他调用。
suspend fun dataSourceOne(){
delay(1_000L)
}
suspend fun dataSourceTwo(){
delay(2_000L)
}
suspend fun dataSourceThree(){
delay(3_000L)
}
// should call [dataSourceOne(), dataSourceTwo(), dataSourceThree()] in parallel
// and discard [dataSourceTwo(), dataSourceThree()] after the getting a result from dataSourceOne()
PS:Android 应用程序。
【问题讨论】:
标签: android rx-java2 kotlin-coroutines