美文网首页
Python基础教程系列九:多线程2

Python基础教程系列九:多线程2

作者: 奇遇Python | 来源:发表于2019-10-11 17:48 被阅读0次

1.进程

进程(Process)是系统进行资源分配和调度的基本单位,是操作系统结构的基础。程序是指令、数据及其组织形式的描述,进程是程序的实体。

进程基本状态

  • 就绪(Ready)
  • 运行(Running)
  • 阻塞(Blocked)
进程基本状态如图所示:来源百度百科

2.线程

线程,有时被称为轻量级进程(Lightweight Process,LWP),是操作系统调度(CPU调度)执行的最小单位。

通俗理解:
进程,能够完成多任务,比如 在一台电脑上能够同时运行多个QQ
线程,能够完成多任务,比如 一个QQ中的多个聊天窗口

线程声明周期如图所示:来源网络 进程和线程关系如图所示:来源网络

3.协程

协程(coroutine)是一种程序组件。

4.进程、线程、协程对比

操作系统:来源网络
  • 进程是资源分配的单位
  • 线程是操作系统调度的单位
  • 进程切换需要的资源很最大,效率很低
  • 线程切换需要的资源一般,效率一般(当然了在不考虑GIL的情况下)
  • 协程切换任务资源很小,效率高
  • 多进程、多线程根据cpu核数不一样可能是并行的,但是协程是在一个线程中 所以是并发

相关文章

网友评论

      本文标题:Python基础教程系列九:多线程2

      本文链接:https://www.haomeiwen.com/subject/efqxmctx.html