gpt4 book ai didi

android - RxJava 在继续之前等待响应被检索

转载 作者:行者123 更新时间:2023-11-30 00:28:17 28 4
gpt4 key购买 nike

        getRemarks(licensePlate)
.observeOn(AndroidSchedulers.mainThread())
.subscribeOn(AndroidSchedulers.mainThread())
.subscribe(response -> {
Store.remarks(response);
}, throwable -> {
Timber.e("Error", throwable);
});

public static Observable<List<Remark>> getRemarks(String number) {
return getApiService().getRemarks(number);
}

所以,现在这是我的代码,但我需要等到此方法获得响应,然后才能继续编写代码。如我所见,我需要 .toBlocking(但它无限期地阻止了我的代码)并且我在某处读到我需要 .forEach 方法但不知道如何使用它。

最佳答案

代替订阅使用:

.toBlocking()
.forEach(new Action1<List<Remark>>() {
@Override
public void call(List<Remark> remarks) {
Store.remarks(remarks);
}
});

无论如何,除非您将其用于测试,否则我会避免使用 toBlocking 并且我会寻找不同的策略。 toBlocking,实际上,返回一个 BlockingObservable 作为 documentation says :

It can be useful for testing and demo purposes, but is generally inappropriate for production applications.

考虑通过流组合来发挥 RxJava 的真正力量。你可以看看here了解哪些是组合 Observable

的可用选项

关于android - RxJava 在继续之前等待响应被检索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44967192/

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