python补充之Multiprocessing(三)Threat、Multiprocessing和Normal方法速度比较
thread是多进程
multiprocessing是多核
都有优势,但是multiprocessing提升速度更快,thread方法甚至有时候会比普通方法更慢。尝试用三种方法同时计算两次复杂的运算比较运行时间。
下面代码给出演示:
路径:
/home/pi/Desktop/My_Project/TEXT/3_MultiprocessingLearning.py
代码:
import multiprocessing as mp
import threading as td
import time
def job(q,a):
res=0
for i in range(1000000):
res+=i+i**2+i**3
q.put(res+a)#queue
def multicore():
q=mp.Queue()
p1=mp.Process(target=job,args=(q,1))
p2=mp.Process(target=job,args=(q,2))
p1.start()
p2.start()
p1.join()
p2.join()
res1=q.get()
res2=q.get()
print('multi1:'+str(res1))
print('multi2:'+str(res2))
print('multi