我正在使用微服务,并在其中使用RxJava。只是想知道当发生超时时RxJavA底层会发生什么。请考虑以下示例,
Observable<Integer> dbOservable = Observable.fromCallable(() -> {code to get some DB data})
.timeout(60, TimeUnit.SECONDS)
.subscribeOn(Schedulers.io())
.onErrorReturn(throwable -> {
System.out.println("dbOservable Timedout");
return record; //some dummy record
});
假定数据库查询花费了60秒钟以上,并且按预期发生了超时。这次RxJava到底发生了什么?