大家好,上一讲我们介绍了Android.Framework源码下载及编译,这一讲我们将进入虚拟机概述,JIT概述
一、课程目标:
了解Linux的多线程概念, 了解Android的异步任务机制 ,了解Android 多线程的实现
二、重点难点: Linux的多线程以及多任务的实现
三、考核目标:
Android的多线程如何实现?Android的多线程与Linux系统有什么关系?Android的异步任务有什么办法来实现?课后练习:
四、课后练习
了解概念 ,去看Linux 设计与实现的书籍
1、Linux系统如何支持多线程的?
LinuxThreads
NPTL(Native Posix Thread Library)
两者的区别和关系:Linux 2.6之前的采用LinuxThreads
NPTL 也是采用的1:1的结构, 但在信号处理、线程同步、存储管理等多方面进行了优化
2、Android如何进行多线程或者异步的处理?
New Tread
Runnable
Handler
AsycTask
3、什么时候需要多线程和异步?
说白了就是耗时操作和定时操作 Android中耗时一般是指超过5秒 定时一般是指一个schedule task 的需要
IO操作(网络操作,文件操作,数据库操作)
复杂的运算工作
消息接收方法中的耗时操作
计划任务
多线程同步Synchronized
多线程和界面交互
Activity.runOnUiThread(Runnable)
View.post(Runabl);View.postDelay(Runnable,long)
Handle
AsyncTask
Android UI 主线程简单原则:不要Block Ui Thread;不要在Ui线程歪直接操作UI
特别推荐新课程:Android开发高端课程
http://www.mobidever.com/forum.php?mod=viewthread&tid=2098
本课视频地址:http://www.tudou.com/programs/view/MNR7H2Ng0oc/(土豆网)
课程下载地址:http://www.verycd.com/topics/2900036/ (VeryCD电驴)
作者博客:http://www.mobidever.com/forum.php (Sundy-Android开发联盟)