python多进程多线程测试
import time
from concurrent.futures import ProcessPoolExecutor,ThreadPoolExecutor
def add(num):
a=0
for i in range(num):
a+=1
return a
if __name__=="__main__":
pool_process=ProcessPoolExecutor(10)
x1=[]
t_process=time.time()
for i in range(10):
a=pool_process.submit(add,10000000)
x1.append(a)
x=[i.result() for i in x1]
print(x,"多进程",time.time()-t_process)
x2=[]
t_s=time.time()
for j in range(10):
b=add(10000000)
x2.append(b)
print(x2,"单进程",time.time()-t_s)
p_thread=ThreadPoolExecutor(10)
y=[]
t_y=time.time()
for i in range(10):
a=p_thread.submit(add,10000000)
y.append(a)
z=[k.result() for k in y]
print(z,"多线程",time.time()-t_y)
对于计算密集型结果多进程更快