gpt4 book ai didi

kotlin - RxJava Single最小执行时间

转载 作者:行者123 更新时间:2023-12-02 13:36:28 29 4
gpt4 key购买 nike

我正在尝试在网络请求期间在UI中显示进度条至少3秒钟。

此答案中描述的相同方法似乎不适用于Single。
RxJava Observable minimum execution time

Single.mergeDelayError(
apiGetUserSingle(),
Single.timer(3, TimeUnit.SECONDS)
)
.reduce { _, _ -> Unit }
.compose(schedulerProvider.ioToMainSingleScheduler())


private fun apiGetUserSingle(): Single<User> // Network request

但我看到一个错误: MaybeTransformer cannot be applied to SingleTransformer
用Single实现此的最佳方法是什么?

最佳答案

您可以尝试使用zip运算符:

 Single.zip(
apiGetUserSingle(),
Single.timer(3, TimeUnit.SECONDS),
BiFunction<User, Long, Unit> { _, _ -> Unit })

如果使用RxKotlin,则可以避免明确指定类型:
Singles.zip(
apiGetUserSingle(),
Single.timer(3, TimeUnit.SECONDS)
) { _, _ -> Unit }

关于kotlin - RxJava Single最小执行时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55426669/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com