@Override public void executeTask(final Ui ui, int totalTask) {
List<Observable<ApiResponse>> calls = new ArrayList<>();
for (int i = 0; i < totalTask; i++) {
Observable<ApiResponse> apiResponseObservable = apiCall.callObservable(i + 1);
Observable<ApiResponse> observableOnNewThread =
apiResponseObservable.subscribeOn(Schedulers.newThread());
calls.add(observableOnNewThread);
}
Observable.zip(calls, new FuncN<Long>() {
@Override public Long call(Object... args) {
return System.currentTimeMillis();
}
})
.subscribeOn(Schedulers.newThread())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Action1<Long>() {
@Override public void call(Long time) {
ui.showTime(time);
}
}, new Action1<Throwable>() {
@Override public void call(Throwable throwable) {
ui.showError("error " + throwable);
}
});
}
TaskWithRx.java 文件源码
java
阅读 27
收藏 0
点赞 0
评论 0
项目:trabajando-en-diferido
作者:
评论列表
文章目录