Python与多线程多进程

多线程与多进程

  • 多线程与多进程优劣比较
  • Python与多线程多进程
    • CPU和IO密集型
      • 举例
      • 判断方法:
    • 多线程
    • 多进程

多线程与多进程优劣比较

Python与多线程多进程_第1张图片

Python与多线程多进程

CPU和IO密集型

举例

https://www.cnblogs.com/zhangyubao/p/7003535.html
CPU密集型代码:各种循环处理、计数等等
IO密集型代码:文件处理、网络爬虫等

判断方法:

  1. 直接看CPU占用率, 硬盘IO读写速度(任务管理器)
  2. 计算较多->CPU;时间等待较多(如网络爬虫)->IO

多线程

Python由于有全锁局的存在(同一时间只能有一个线程执行),并不能利用多核优势。多线程进程是CPU密集型:多线程并不能带来效率上的提升,相反还可能会因为线程的频繁切换,导致效率下降;
多线程进程是IO密集型,多线程进程可以利用IO阻塞等待时的空闲时间执行其他线程,提升效率。

多进程

Python 一般使用多进程,代码编写参考链接

https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/001431927781401bb47ccf187b24c3b955157bb12c5882d000
https://github.com/laixintao/python-parallel-programming-cookbook-cn

你可能感兴趣的:(笔记)