之前看了2天的多线程,就不看了。现在继续拾起来吧。最近有点松散,多线程内容都是看毕向东的视频以及网络教程和各种书籍
什么是进程?
- 通俗一点讲,就是正在进行的程序,进程是操作系统控制的基本运行单元;
如上图所示,谷歌浏览器正在运行着,它就是一个进行中的程序,也就是进程。
什么是线程?
- 进程中独立运行的子任务就是一个线程。像QQ.exe运行的时候就有很多子任务在运行,比如聊天线程、下载文件线程等。
为什么要用多线程?
如图所示:
-
单任务:
- 任务1执行10秒,10秒之后,再可以执行任务2.
- 任务2必须等待任务1执行完成后,才可以执行,系统运行效率大大降低
- 单任务的特点就是排队执行,也就是同步执行
-
多任务:
- cpu就可以在任务1 和任务2 之间来回切换,任务2 就不必等待10秒之后执行
- 系统运行效率大大提高
- 使用多线程也就是使用异步
注意
- 多线程是异步的,所以千万不要把Eclipse里代码的顺序当成线程执行顺序,线程被调用的时机是随机的