rxJava线程切换

本文详细介绍了RxJava中各种线程类型的应用场景及其特点,包括Schedulers.io()、Schedulers.newThread()、Schedulers.computation()、AndroidSchedulers.mainThread()和Schedulers.single()等。同时解释了observeOn和subscribeOn操作符的作用,并通过示例展示了线程切换的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

RxJava线程类型

Schedulers.io()

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

Schedulers.newThread()

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

Schedulers.computation()

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

AndroidSchedulers.mainThread()

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

Schedulers.single()

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

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

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

线程切换示例:

 

执行结果:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值