RxJava 调度器在主线程上观察
RxJava Scheduler to observe on main thread
如果我这样写,那么both操作和通知都会在current线程上...
Observable.fromCallable(() -> "Do Something")
.subscribe(System.out::println);
如果我像这样在后台线程上执行操作,那么 操作和通知都将在 background 线程上进行。 ..
Observable.fromCallable(() -> "Do Something")
.subscribeOn(Schedulers.io())
.subscribe(System.out::println);
如果我想在主线程上观察并在后台做 Android 我会做...
Observable.fromCallable(() -> "Do Something")
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(System.out::println);
但是,如果我正在编写一个标准的 Java 程序,那么您希望在主线程上观察到的状态相当于什么?
通过.toBlocking()
将Observable
转换为BlockingObservable
;这为您提供了等待完成、获取一件物品等的阻塞方法
对于 RxJava2 使用“blockingSubscribe()
”
Flowable.fromArray(1, 2, 3)
.subscribeOn(Schedulers.computation())
.blockingSubscribe(integer -> {
System.out.println(Thread.currentThread().getName());
});
如果我这样写,那么both操作和通知都会在current线程上...
Observable.fromCallable(() -> "Do Something")
.subscribe(System.out::println);
如果我像这样在后台线程上执行操作,那么 操作和通知都将在 background 线程上进行。 ..
Observable.fromCallable(() -> "Do Something")
.subscribeOn(Schedulers.io())
.subscribe(System.out::println);
如果我想在主线程上观察并在后台做 Android 我会做...
Observable.fromCallable(() -> "Do Something")
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(System.out::println);
但是,如果我正在编写一个标准的 Java 程序,那么您希望在主线程上观察到的状态相当于什么?
通过.toBlocking()
将Observable
转换为BlockingObservable
;这为您提供了等待完成、获取一件物品等的阻塞方法
对于 RxJava2 使用“blockingSubscribe()
”
Flowable.fromArray(1, 2, 3)
.subscribeOn(Schedulers.computation())
.blockingSubscribe(integer -> {
System.out.println(Thread.currentThread().getName());
});