gpt4 book ai didi

java - RxJava;如何同步发射 observables

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:14:57 25 4
gpt4 key购买 nike

我想同步发射两个 Observable 对象(它们是异步的),一个接一个地返回 第一个 发射的 Observable 对象。如果第一个失败,则不应发出第二个。

假设我们有一个让用户登录的 Observable,以及另一个在登录后自动选择用户帐户的 Observable。

这是我尝试过的:

public Observable<AccessToken> signInAndSelectAccount(String username, String password)
{

Observable<AccessToken> ob1 = ...; // Sign in.
Observable<Account> ob2 = ...; // Select account.


return Observable.zip(
ob1,
ob2,
new Func2<AccessToken, Account, AccessToken>() {
@Override
public AccessToken call(AccessToken accessToken, Account account)
{
return accessToken;
}
});
}

不幸的是,这不适用于我的用例。它将并行发出/调用两个可观察对象,从“ob1”开始。

有人遇到过类似的用例吗?或者有关于如何让可观察对象以同步方式等待彼此的想法,其中第一个发出的可以返回?

提前致谢。

最佳答案

您还可以使用 rx.observables.BlockingObservable 例如:

BlockingObservable.from(/**/).single();

关于java - RxJava;如何同步发射 observables,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35062485/

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