什么时候用IntentService
2024-10-16 18:02:55
IntentService是继承自Service类的,在执行耗时操作时,其实,只需要在service中的onStartCommand(主线程)新启一个线程即可,那IntentService什么时候用来会比较好呢?
我们通过startService多次启动了IntentService,这会产生多个job,由于IntentService只持有一个工作线程,所以每次onHandleIntent只能处理一个job。面多多个job,IntentService会如何处理?处理方式是one-by-one,也就是一个一个按照先后顺序处理,先将intent1传入onHandleIntent,让其完成job1,然后将intent2传入onHandleIntent,让其完成job2…这样直至所有job完成,所以我们IntentService不能并行的执行多个job,只能一个一个的按照先后顺序完成,当所有job完成的时候IntentService就销毁了,会执行onDestroy回调方法。
所以在批量执行任务时,如果对性能开销有严格要求时,可以考虑使用IntentService。
最新文章
- MongoDB 基础知识
- 【2016-08-18】转载:总结C++中几种结构体初始化的方法
- 【HTML5】Video + DOM
- android上传文件到wamp服务器
- Linux Kernel 4.8分支第4个候选版本发布
- sort排序中的坑
- 如何在Linux桌面环境下自动启动程序?
- Qt树形控件QTreeView使用1——节点的添加删除操作 复选框的设置
- WindowsPhone 8 开发 之 本地数据库应用
- BZOJ 1782: [Usaco2010 Feb]slowdown 慢慢游( BIT + dfs )
- heap和stack的区别
- centos 修改主机映射
- md5加密用户登陆遇到的问题及解决办法
- 如何删除windows中运行的历史记录
- 4-20模块 序列化模块 hashlib模块
- 数据加密之DES加密
- FMS4.5( Adobe Flash Media Server4.5)流媒体服务器搭建
- 使用Appium 测试微信小程序和微信公众号方法
- hdoj1171 Big Event in HDU
- MySQL两个日期字段相减得到秒的方法
热门文章
- 数据库日常维护-CheckList_03有关数据库数据文件大小检查
- Oracle 故障处理总结
- Vertica 7.1安装最佳实践(RHEL6.4)
- Windows下Memcached安装与配置实例
- 详解:基于WEB API实现批量文件由一个服务器同步快速传输到其它多个服务器功能
- 怎样写一个webpack loader
- 『.NET Core CLI工具文档』(二).NET Core 工具遥测(应用信息收集)
- [译]Google官方关于Android架构中MVP模式的示例
- atitit.日期,星期,时候的显示方法ISO 8601标准
- 学习笔记 MYSQL报错注入(count()、rand()、group by)