早些时候,我尝试在python中使用线程模块来创建多个线程。然后我了解了GIL以及它如何不允许在一台机器上利用多个CPU内核。所以现在我试图做多处理(我不严格需要单独的线程)。使用Python产生多个进程
这是我写的示例代码,以查看是否正在创建不同的进程。但是从下面的输出中可以看出,我每次都得到相同的进程ID。所以多个进程没有被创建。我错过了什么?
import multiprocessing as mp
import os
def pri():
print(os.getpid())
if __name__=='__main__':
# Checking number of CPU cores
print(mp.cpu_count())
processes=[mp.Process(target=pri()) for x in range(1,4)]
for p in processes:
p.start()
for p in processes:
p.join()
输出:
4
12554
12554
12554
删除第在'target = pri()'上输入e'()' –