
主函数里分别是多进程和单进程的代码,但是我分别运行发现两个时间几乎没差别呀,甚至多进程的还慢了一秒左右,请问问题出在哪里呢
你这里并没有真正的调用到多进程执行程序,
当你调用多进程执行的时候,实际上程序是阻塞执行的,并没有并行执行
def func1():
res = 0
for i in range(1, 50000000):
res+=i
return res
if __name__ == '__main__':
print("开始执行程序")
start_time = time.time()
size = 2
pool = Pool(2)
for i in range(size):
print("输出这里,查看是阻塞执行的程序")
res = pool.apply_async(func1)
print(f'res:{res.get()}')
end_time = time.time()
print(end_time-start_time)