python中多進程multiprocessing、多線程threading、線程池threadpool


淺顯點理解:進程就是一個程序,里面的線程就是用來干活的,,,進程大,線程小

 

一、多線程threading

簡單的單線程和多線程運行:一個參數時,后面要加逗號

步驟:for循環,相當於多個線程——t=threading.Thread(target=函數名,args=(參數,))——t.start()——while threading.active_count()!=1:pass

 

 添加主線程的打印功能,會發現,會先運行完主線程,才會去運行子線程

 

要想先運行完子線程再去運行主線程的2個辦法:

 

舉例:多線程下載圖片

 

 

二、多進程multiprocessing:windows一定要放在if __name__=='__mian__'下面運行,否則會報錯

步驟:for循環,相當於創建多個進程——p=multiprocessing.Process(target=函數名,args=(參數,))——p.start()——while len(multiprocessing.active_children())!=1:  pass

 

三、線程池 threadpool

步驟:pool=threadpool.ThreadPool(200)——reqs=threadpool.makeRequests(函數名,數據)——[pool.putRequest(t) for t in reqs]——pool.wait()

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM