我通过
注册了一个钩子RxJavaHooks.setOnScheduleAction(new MyOnScheduleAction());
并使用
创建自定义调度程序(用于测试目的)Scheduler scheduler = Schedulers.from(Executors.newSingleThreadExecutor());
但是以下代码不会调用已注册的钩子:
Observable.create(subscriber -> {
subscriber.onNext("Hi");
subscriber.onComplete();
}).subscribeOn(scheduler).subscribe(myTestSubscriber);
但是,如果我将subscribeOn(scheduler)
替换为subscribeOn(Schedulers.io())
(或subscribeOn(Schedulers.computation())
,则会按预期调用该挂钩。
这是预期的行为吗?我正在使用RxJava 1.1.8。