美文网首页
RxJava zip组合任务部分失败处理

RxJava zip组合任务部分失败处理

作者: 咚咚_Coding | 来源:发表于2021-03-17 18:06 被阅读0次

核心方法onErrorReturn

    //任务1
    Observable<Object> integerObservable1 = Observable.create(emitter -> {
        emitter.onError(new Throwable());
    //失败默认值处理
    }).onErrorReturn((Function<Throwable, Integer>) throwable -> 8).subscribeOn(Schedulers.io());
    //任务2
    Observable<Object> observable2 = Observable.create(emitter -> {
        emitter.onNext("phone number :");
        emitter.onComplete();
    }).subscribeOn(Schedulers.io());
    //3组合打包zip
    Disposable subscribe = Observable.zip(integerObservable1, observable2, (integer, s) -> {
                Log.d(TAG, "thread1..." + Thread.currentThread().getName());
                return new StringBuffer().append(s).append(integer).toString();
            }
    ).observeOn(AndroidSchedulers.mainThread()).subscribe(s -> {
        Log.d(TAG, "thread2..." + Thread.currentThread().getName());
        Toast.makeText(mContext, s, Toast.LENGTH_SHORT).show();
    });

相关文章

网友评论

      本文标题:RxJava zip组合任务部分失败处理

      本文链接:https://www.haomeiwen.com/subject/nbmecltx.html