线程理论

一、什么是进程?

进程是:

  1、计算机中最小的资源分配单位

  2、进程对操作系统来说还是有一定负担

  3、创建一个进程 错做系统要分配的资源大致有:

        # 代码
# 数据
# 文件
二、什么是线程?

线程是:

  1、线程是计算机中被cpu调度的最小单位

  2、你的计算机当中的cpu都是执行的线程中的代码
三、为什么要有线程?

1、轻量级的概念

2、他没有属于自己的进程资源:一条线程只负责执行代码,没有自己独立的代码、变量、文件资源
四 、线程与进程之间的关系
     1、每一个进程中都有至少一条线程在工作

五、进程与线程之间的区别
     1、占用的资源共享
2、调度的效率
3、资源是否共享

六、线程的特点
     1、同一个进程中的所有线程的资源是共享的
2、轻量级 没有自己的资源
七、python 中的线程
    1、一个进程中的多个线程能够并行么?不行
python是一个解释型语言
为什么不行?
Cpython解释器 内部有一把全局解释器锁 GIL
所以线程不能充分的利用多核
同一时刻用一个进程中的线程只有一个能被cpu执行
GIL锁 缺实时限制了你的程序效率
GIL锁 目前 是能够帮助你在线程的切换中提高效率
2、 是不是python 就没有前途
cpu -- 计算型
web 爬虫 金融分析(基本在IO等待中)
3、就是想写高计算型
开启多进程
换一个解释器,pypy jpy



猜你喜欢

转载自www.cnblogs.com/youhongliang/p/9700938.html