首页 > Python > python GIL 相关

python GIL 相关

2012年3月20日 发表评论 阅读评论

对于纯python代码,即使开启多个线程也无法并行执行,因为GIL会将它们串行化,但这并不意味着多线程在python中无用武之地:
一个I/O密集型的线程因等待而sleep时,会释放GIL,另一个线程这时可以接手(因为在输入输出函数会更多地调用内建的C级代码,而不是Python级代码)
可以在C扩展中开启多个线程,不受GIL的限制,比如ctypes
对于多用户的程序或者需要responsive interface的GUI程序,多线程是一个很好的解决方案

参考文档:
1.http://septem.iteye.com/blog/1002509

除非注明,文章为IT热血青年原创,欢迎转载!转载请注明本文地址,谢谢。
本文地址:http://blog.itblood.com/python-gil.html

分类: Python 标签: ,
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.