线程控制
Scheduler 调度器(相当于线程控制器)
- Scheduler.immediate()
直接在当前线程运行。它是timeout、timeInterval和timestamp操作符的默认调度器。 - Scheduler.newThread()
开启新线程 - Scheduler.io()
I/O操作(读写文件、读写数据库、网络信息交互等),这个调度器的线程池会根据需要增长,比newThread更有效率。对于普通的计算任务,使用Schedulers.computation();Schedulers.io( )默认是一个CachedThreadScheduler,很像一个有线程缓存的新线程调度器。 - Schedulers.computation()
计算所使用的 Scheduler。如事件循环或和回调处理,不要用于IO操作(IO操作请使用Schedulers.io());默认线程数等于处理器的数量。是buffer、debounce、delay、interval、sample和skip操作符的默认调度器。 - Schedulers.trampoline
当我们想在当前线程执行一个任务时,并不是立即执行时,可以用trampoline将它入队。这个调度器将会处理它的队列并且按序运行队列中的每一个任务。是repeat和retry操作符的默认调度器。 - AndroidSchedulers.mainThread()
指定的操作默认在主线程中运行。
用Subscribe和observeOn操作符来控制线程
RxBus
RxJava实现事件总线RxBus来替代EventBus和otto,来减少依赖库
RxBus的实现及简单使用
RxBus学习之旅--从入门到提高
网友评论