2024-05-15 08:38:23 发布
网友
我了解到,在cPython解释器中有一个GIL,它导致操作系统一次运行一个线程,即使我们有一个多核处理器。同时,从一个线程切换到另一个线程会带来一些时间开销。所以我想知道在多任务模式下,我们可以使用更多的线程来提高效率吗
要在Python程序中使用多个核心,必须使用并发。例如:
import threading def methodA(): #Do Something def methodB(): #Do Something aThread = threading.Thread(target=methodA) aThread.start() bThread= threading.Thread(target=methodA) bThread.start()
当您在不同的内核中同时放置de.start()时,aThread将执行methodA,与de bThread相同,但使用methodB
.start()
如果需要等待两个线程完成其工作,请使用如下.join():
.join()
aThread.join() bThread.join() #Then continue.
并发性这是一个非常大的世界,有许多选项和方法可用于不同的情况
我真的建议你去参观官方网站
要在Python程序中使用多个核心,必须使用并发。例如:
当您在不同的内核中同时放置de
.start()
时,aThread将执行methodA,与de bThread相同,但使用methodB如果需要等待两个线程完成其工作,请使用如下
.join()
:并发性这是一个非常大的世界,有许多选项和方法可用于不同的情况
我真的建议你去参观官方网站
相关问题 更多 >
编程相关推荐