目前使用rxjava ver 1.2.4和rxandroid 1.2.1。我有一个关于.subscribeOn(Schedulers.io())
的问题,我从javadoc读取的是:RxIoScheduler线程数不断增加
“该实现由一个Executor线程池支持,该线程池将根据需要增长。
正如从我知道的线程数量的日志中看到的不断增加,每次我做一些任务:
12-28 11:17:03.879 D/HistoryDatabaseHelper: RxIoScheduler-22
12-28 11:17:03.918 D/HistoryDatabaseHelper: RxIoScheduler-19
12-28 11:17:03.918 D/HistoryDatabaseHelper: RxIoScheduler-18
- 当应用程序变为空闲时,假设没有任何未决的任务正在运行。所以下一个任务应该使用回
RxIoScheduler-1
,不是吗? - 什么时候所有线程都会清理干净?
- 或者这只是线程名称,让我困惑的地方,像
RxIoScheduler-1
这样的旧活动线程在完成其工作时被清除?
我很担心,由于打开线程的数量,执行一些繁重任务时,应用程序将获得OOM或以某种方式击中OOM。
感谢您的解释!我想取消订阅所有发布主要角色的订阅以发布这些主题,我是对的吗?我知道正常的网络调用和db事务足以使用io(),但是您可以举一些comput()方法派生的例子吗?解码图像是否考虑计算任务? – Bryanleesh