求大神指点 关于Python的GIL

macrojj 2014-06-13 10:27:26
我理解因为Python解释器有个全局锁 实际上 解释器没有办法多线程运行。 所以Python程序其实不能真正多线程运行。

这种理解是否正确呢?

另外 如果我把Python字节码 转成了exe 这样不依赖解释器了 是否就可以实现 多线程了呢?
...全文
156 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
The_Third_Wave 2014-06-13
  • 打赏
  • 举报
回复
全局解释器锁(Global Interpreter Lock),是计算机程序设计语言解释器用于同步线程的工具,使得任何时刻仅有一个线程在执行。 你的前一条解释可行。 但是后面exe的理解就完全错误了,因为转换为exe文件,你程序本身还是python,所以还的用Python解释器。如果你有打包成exe的经验,你就会明白,其实就是把所有需要的组件库放在一个exe文件里。如果打包成exe就可以真正实现多线程,那么。。。也就没必要说Python没有真正的多线程了。 其实多线程用在GUI程序里就很好!其他的I/O密集型的可以用多线程,计算密集型?你非要用python,可以使用多进程机制。

37,743

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • WuKongSecurity@BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧