都说python不支持多线程,那为什么它要有threading模块呢?

MrW*_*hat 0 python multithreading python-multithreading python-3.x

我一直在研究Python编程语言,由于多种因素,Python可以说是一种缓慢的语言,其中包括缺乏多线程功能,如果它不支持多线程,那么为什么它有线程模块呢?

小智 6

Python 的单线程特性归功于 GIL(全局解释器锁)。当人们提到 python 是单线程时,他们描述的是 python 在不使用线程或多处理库时如何运行。您仍然可以让 python 使用更多线程,或者启动多个进程,但对于您正在运行的代码的每个实例,它只会使用单个线程。

例如,Javascript 可以利用多个线程,并且不需要任何额外的“工作”来实现这一点。

观看此视频了解更多信息:https://www.youtube.com/watch ?v=m2yeB94CxVQ

  • 单线程仅适用于 CPU 密集型代码,而 IO 密集型代码将从线程中受益。 (3认同)