BC.Wang Welcome

关于Python的多线程、多进程和协程

2019-03-04
BCWang

阅读:


  • 由于Python存在GIL(全局解释器锁),限制多线程同时执行,保证同一时间内只有一个线程在执行,因此使用多线程并不会得到加速(比如使用threading)
  • 解决方法:使用多进程,比如multiprocessing或者parallelpython(pp),这样每个Python脚本运行在多个进程中,有多少核就能够开多少进程
  • 如果遇到了多个请求需要并行处理的问题,核的数目不够使用,可以选择多线程或者协程(查阅Python中协程专用的模块),协程也是通过上下文切换实现看上去的多个任务同时处理
  • 当有并行处理需求时,还需要仔细研究和调试Python上的多线程、多进程和协程的使用。记住这三个概念是必要的!

Similar Posts

Comments

0