Sci*_*pio 1 python python-multithreading
我在ARM Raspbian linux,Python 2.7.13和amd64 Gentoo linux,Python 2.7.14上运行代码
我有一个功能
import threading
def r() :
s = 1
while True:
s = s + 1
Run Code Online (Sandbox Code Playgroud)
然后我为这个函数创建线程
t = threading.Thread(target=r)
t.start()
Run Code Online (Sandbox Code Playgroud)
然后在htop中我可以看到另一个生成的进程(有自己的PID)!和处理.线程文档说:
CPython实现细节:在CPython中,由于Global Interpreter Lock,只有一个线程可以同时执行Python代码(即使某些面向性能的库可能会克服此限制).如果您希望应用程序更好地利用计算资源对于多核机器,建议您使用多处理.
为什么这种行为与文档不同?
| 归档时间: |
|
| 查看次数: |
44 次 |
| 最近记录: |