对于Python如果是CPU密集型应该用多进程模型(大量的计算)

   如果是IO密集型应该用多线程模型(数据的读取写入、网络IO数据传输)

  由于GIL的存在,CPython不能有效的利用多核处理器,表现为任意时间一个进程只有一个线程在跑;而IO密集型运算,多数是在IO读写将线程堵塞掉了,这个时候线程切换是很合理的,反正线程只是单纯地等待,在这个等待的时候去做其他的事情,资源利用率就上去了。

  

  python的多线程只能使用一个cpu核心,io密集型应用,本来cpu占用率就很低(主要原因还是GIL锁)

  python多线程这个限制和协程有点像,应用也很像,都是适合io密集型

最新文章

  1. js与多行字符串
  2. Mybtis框架总结(一)
  3. javascript日期验证:填写的日期大于等于当前日期
  4. Ruby 类案例
  5. Android系列之UI组件----Menu菜单
  6. commonjs amd cmd的区别
  7. C++列出完数
  8. python练习程序(c100经典例17)
  9. C# 枚举绑定到ComboBox
  10. HAOI2007 理想的正方形
  11. css考核点整理(十一)-响应式开发经验,响应式页面的三种核心技术是什么
  12. 【jar包】JSON之解析利器GSON--【gson-2.2.4.jar】
  13. WPF获取窗口句柄的方法
  14. 使用git提交到github,每次都要输入用户名和密码的解决方法
  15. Mac下Git安装及配置
  16. Hadoop问题:DataNode进程不见了
  17. 初学python之路-day09
  18. appium三种等待时间
  19. css3实现背景渐变
  20. 12 week blog

热门文章

  1. 【BZOJ3864】Hero meet devil DP套DP
  2. 在嵌入式、海思、ARM中进行统一的音频AAC编码的必要性
  3. ptyhon ORM mongoengine
  4. 我的Android进阶之旅------>Android检测wifi连接状态
  5. PAT 天梯赛 L2-028. 秀恩爱分得快 【数据处理】
  6. mooc_java 集合框架下
  7. js_调试_01_14 个你可能不知道的 JavaScript 调试技巧
  8. 机器学习 F1-Score, recall, precision
  9. 查询oracle 数据库 SQL语句执行情况
  10. kubectl工具管理应用生命周期