gpt4 book ai didi

java - 将间隔与运算符一起使用 (RxJava)

转载 作者:行者123 更新时间:2023-12-01 20:18:45 25 4
gpt4 key购买 nike

我需要每 1/3 秒发出一次网络请求,并在 onComplete 方法之前等待 3 秒。我怎么做?我下面的代码在发出项目之前等待 3 秒,这不是我想要的。

    disposable = Observable
.interval(0, 334, TimeUnit.MILLISECONDS)
.skipLast(9)
.take(postsCount + 9)
.subscribeWith(new DisposableObserver<Long>() {
@Override
public void onNext(@NonNull Long number) {
// Code in onNext method
}

@Override
public void onError(@NonNull Throwable e) {
// Code in onError method
}

@Override
public void onComplete() {
// Code in onComplete method
}
});

最佳答案

不要 sleep ,而是使用具有所需延迟的组合:

Observable.intervalRange(0, postCount, 0, 334, TimeUnit.MILLISECONDS)
.concatWith(Observable.empty().delay(3, TimeUnit.SECONDS))
... // react to each tick

关于java - 将间隔与运算符一起使用 (RxJava),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45261280/

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