美文网首页
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