版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/rambomatrix/article/details/81294833
安卓系统或应用开发,java多线程编程是非常重要也是比较难的一个知识点。掌握线程的实现原理、生命周期,合理的使用线程、线程池对于开发稳定、高效的程序是必须的基础。
结合安装系统、应用开发实践,我们先思考下面几个常见的问题:
- 安卓系统基于Linux实现,每一个java线程会对应一个pthread线程。
- 每一个app在启动之后都会启动一个binder线程用于监听消息事件,安卓系统是基于消息驱动。
- 线程的创建、销毁非常消耗系统资源,使用线程池可以避免线程频繁的创建和销毁。
- 线程具有生命周期,如果没有在应当的时刻将线程状态设置为阻塞,可能会引起cpu空转。
- 多线程编程中,需要注意对线程同步,避免出现线程死锁或者脏数据的情况,例如hashmap线程同步问题。
带着这几个问题,我们开启安卓系统线程学习的篇幅,主要涉及:
- 线程实现原理,结合jdk源码分析
- 线程生命周期
- 线程优先级,结合demo案例分析
- 线程通信,以handler实现为例
- 多线程并发,以hashmap为例
- app初始化线程分析
- java线程池使用