IntentServiceService的子类,用来处理异步请求。客户端可以通过startService(Intent)方法将请求的Intent传递请求给IntentServiceIntentService会将该Intent加入到队列中,然后对每一个Intent开启一个worker thread来进行处理,执行完所有的工作之后自动停止Service。每一个请求都会在一个单独的worker thread中处理,不会阻塞应用程序的主线程。IntentService 实际上是Looper,Handler,Service 的集合体,他不仅有服务的功能,还有处理和循环消息的功能.

 

所以在Service中进行耗时的操作时必须要新开一个线程。 
至于为什么要使用Service而不是Thread,这个主要的区别就是生命周期不同,Service是Android系统的一个组件,Android系统会尽量保持Service的长期后台运行,即使内存不足杀死了该服务(很少会出现内存不足杀死服务的情况)也会在内存可用的时候去复活该服务,而Thread随后都会被杀死

 

posted on 2015-04-29 11:55  道无涯  阅读(150)  评论(0编辑  收藏  举报