python進(jìn)程池Pool中apply方法與apply_async方法的區(qū)別
在掌握apply方法與apply_async的區(qū)別之前,需要了解阻塞和非阻塞的區(qū)別
阻塞
阻塞好比過獨(dú)木橋,前面人不走,后面人就無法先前走,只有前面人過了獨(dú)木橋,后面人才能繼續(xù)向前走
非阻塞
非阻塞的邏輯和阻塞相反,就是前面人不走,你就在旁邊待著,讓后面人先走,
apply就是屬于上面的阻塞模式,apply_async屬于非阻塞模式
1.apply實(shí)例
import multiprocessing
def fun(name):
print(name)
if __name__=="__main__":
pool = multiprocessing.Pool(3)
for i in range(1,6):
st = "start {}".format(i)
pool.apply(func=fun,args=(st,))
print("this is flag!")
pool.close()
pool.join()
通過下面的執(zhí)行結(jié)果的截圖可以發(fā)現(xiàn),print("this is flag!")在線程池里的任務(wù)執(zhí)行完畢后才執(zhí)行

2.apply_async實(shí)例
import multiprocessing
def fun(name):
print(name)
if __name__=="__main__":
pool = multiprocessing.Pool(3)
for i in range(1,6):
st = "start {}".format(i)
pool.apply_async(func=fun,args=(st,))
print("this is flag!")
pool.close()
pool.join()
apply_async中的print("this is flag!")代碼是在進(jìn)程池之前執(zhí)行

總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python實(shí)現(xiàn)圖形用戶界面計(jì)算器
這篇文章主要為大家詳細(xì)介紹了Python實(shí)現(xiàn)圖形用戶界面計(jì)算器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-07-07
python實(shí)現(xiàn)兩個(gè)文件合并功能
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)兩個(gè)文件合并功能,一個(gè)簡(jiǎn)單的文件合并程序,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-04-04
Python利用Flask動(dòng)態(tài)生成漢字頭像
這篇文章主要為大家詳細(xì)介紹了Python如何利用Flask動(dòng)態(tài)生成一個(gè)漢字頭像,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定的幫助,需要的可以參考一下2023-01-01
Python?Setuptools的?setup.py實(shí)例詳解
setup.py是一個(gè)?python?文件,它的存在表明您要安裝的模塊/包可能已經(jīng)用?Setuptools?打包和分發(fā),這是分發(fā)?Python?模塊的標(biāo)準(zhǔn)。?它的目的是正確安裝軟件,本文給大家講解Python?Setuptools的?setup.py感興趣的朋友跟隨小編一起看看吧2022-12-12
對(duì)Python random模塊打亂數(shù)組順序的實(shí)例講解
今天小編就為大家分享一篇對(duì)Python random模塊打亂數(shù)組順序的實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-11-11

