ToB企服应用市场:ToB评测及商务社交产业平台

标题: 多使命之进程与线程 [打印本页]

作者: 前进之路    时间: 2024-5-15 09:22
标题: 多使命之进程与线程
多使命进程与线程

一、多使命介绍

​        我们生存中有很多事情是同时举行的,好比开车的时间 手和脚共同来驾驶汽车,再好比唱歌跳舞也是同时举行的;用程序来模拟:
  1. from time import sleep
  2. def sing():
  3.     for i in range(3):
  4.         print("正在唱歌...%d"%i)
  5.         sleep(1)
  6. def dance():
  7.     for i in range(3):
  8.         print("正在跳舞...%d"%i)
  9.         sleep(1)
  10. if __name__ == '__main__':
  11.     sing()
  12.     dance()
复制代码
总结
二、进程

1> 基本概念

2> 进程使用和特性

multiprocessing模块就是跨平台版本的多进程模块,提供了一个Process类来代表一个进程对象,这个对象可以理解为是一个独立的进程,可以执行另外的事情

三、线程

1> 基本概念

2> 线程使用和特性

四、进程线程的等候/终止 和 保卫模式

五、多进程多线程队列综合演练

六、GIL全局解释器锁

基本概念
  1.   GIL 是python的全局解释器锁,同一进程中假如有多个线程运行,一个线程在运行python程序的时候会霸占python解释器(加了一把锁即GIL),使该进程内的其他线程无法运行,等该线程运行完后其他线程才能运行。如果线程运行过程中遇到耗时操作,则解释器锁解开,使其他线程运行。所以在多线程中,线程的运行仍是有先后顺序的,并不是同时进行。
  2.   我们可以把GIL看作是“通行证”,并且在一个python进程中,GIL只有一个。拿不到通行证的线程,就不允许进入CPU执行。GIL只在cpython中才有,即同一个进程下的多个线程无法利用多核优势。
复制代码
七、进程线程对比


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4