多线程

多线程环境  线程的生命周期 .

1. Handler+Thread

2. AsyncTask

3. ThreadPoolExecutor

4. IntentService

AsyncTask是android提供的轻量级的异步类,可以直接继承AsyncTask,在类中实现异步操作,并提供接口反馈当前异步执行的程度(可以通过接口实现UI进度更新),最后反馈执行的结果给UI主线程。

.Executors.newFixedThreadPool()  创建一个定长的线程池,每提交一个任务就创建一个线程,直到达到池的最大长度,这时线程池会保持长度不再变化2.Executors.newCachedThreadPool()  创建一个可缓存的线程池,如果当前线程池的长度超过了处理的需要时,它可以灵活的回收空闲的线程,当需要增加时,    它可以灵活的添加新的线程,而不会对池的长度作任何限制3.Executors.newScheduledThreadPool()  创建一个定长的线程池,而且支持定时的以及周期性的任务执行,类似于Timer4.Executors.newSingleThreadExecutor()  创建一个单线程化的executor,它只创建唯一的worker线程来执行任务

适用范围

1. 批处理任务

IntentService

IntentService继承自Service,是一个经过包装的轻量级的Service,用来接收并处理通过Intent传递的异步请求。客户端通过调用startService(Intent)启动一个IntentService,利用一个work线程依次处理顺序过来的请求,处理完成后自动结束Service。



 

发布了26 篇原创文章 · 获赞 1 · 访问量 3万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览