rxJava线程切换

RxJava线程类型

Schedulers.io()

非cpu密集型适合查找文件,网络请求,访问数据库等耗时操作,线程数量无限制会导致线程无限增长。

Schedulers.newThread()

每次都会创建新的线程(线程的创建和销毁都是很耗性能的),需要慎用,一般可以用在长时间运行在后台,而不会频繁创建的操作。

Schedulers.computation()

cpu密集型用于处理非常大量数据、图片处理,线程有最大值的限制

AndroidSchedulers.mainThread()

把当前线程切到主线程,实现更新UI

Schedulers.single()

线程中的单例模式,这个线程中的任务会根据先进先出的顺序执行。不是当前线程,而是在一个线程单例。

操作符
observeOn(Scheduler scheduler)指定观察者的线程

subscribeOn(Scheduler scheduler)指定被观察者线程

线程切换示例:

rxJava线程切换_第1张图片

 

执行结果:

 

你可能感兴趣的:(rxJava)