【发布时间】:2015-10-21 19:57:05
【问题描述】:
我是 RxJava 的新手,正在努力解决一个(我猜的)简单问题。我想在 3 个线程中同时处理订阅部分。这就是我使用 FixedThreadPool 的原因。示例代码:
Observer.just("one", "two", "three", "four")
.observeOn(Schedulers.io())
.subscribeOn(Schedulers.from(Executors.newFixedThreadPool(3))
.subscribe(new Observer<String>() {
public void onNext(String string) {
Log.d(TAG, "Started: " + string);
SystemClock.sleep(1000);
Log.d(TAG, "Ended: " + string);
}
(...)
}
预期结果:
Started: one
Started: two
Started: three
Ended: one
Started: four
Ended: two
Ended: three
Ended: four
实际结果:
Started: one
Ended: one
Started: two
Ended: two
Started: three
Ended: three
Started: four
Ended: four
我做错了什么?
【问题讨论】:
标签: android multithreading rx-java rx-android