A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 蔡锐 中级黑马   /  2015-7-17 08:52  /  358 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1:要想了解多线程,必须先了解线程,而要想了解线程,必须先了解进程,因为线程是依赖于进程而存在。

2:什么是进程?
        通过任务管理器我们就看到了进程的存在。
        而通过观察,我们发现只有运行的程序才会出现进程。
        进程:就是正在运行的程序。
        进程是系统进行资源分配和调用的独立单位。每一个进程都有它自己的内存空间和系统资源。
       
3:多进程有什么意义呢?
        单进程的计算机只能做一件事情,而我们现在的计算机都可以做多件事情。
        举例:一边玩游戏(游戏进程),一边听音乐(音乐进程)。
        也就是说现在的计算机都是支持多进程的,可以在一个时间段内执行多个任务。
        并且呢,可以提高CPU的使用率。
       
        问题:
                一边玩游戏,一边听音乐是同时进行的吗?
                不是。因为单CPU在某一个时间点上只能做一件事情。
                而我们在玩游戏,或者听音乐的时候,是CPU在做着程序间的高效切换让我们觉得是同时进行的。
               
4:什么是线程呢?
        在同一个进程内又可以执行多个任务,而这每一个任务我就可以看出是一个线程。
        线程:是程序的执行单元,执行路径。是程序使用CPU的最基本单位。
        单线程:如果程序只有一条执行路径。
        多线程:如果程序有多条执行路径。
       
5:多线程有什么意义呢?
        多线程的存在,不是提高程序的执行速度。其实是为了提高应用程序的使用率。
        程序的执行其实都是在抢CPU的资源,CPU的执行权。
        多个进程是在抢这个资源,而其中的某一个进程如果执行路径比较多,就会有更高的几率抢到CPU的执行权。
        我们是不敢保证哪一个线程能够在哪个时刻抢到,所以线程的执行有随机性。

7 个回复

正序浏览
多线程笔记 学习了:lol
回复 使用道具 举报
一下清楚了
回复 使用道具 举报
学习了,感谢分享
回复 使用道具 举报
学习了,谢谢分享
回复 使用道具 举报
学习了。。。
回复 使用道具 举报
学习了  谢谢分享
回复 使用道具 举报
\谢谢分享
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马