您好,登錄后才能下訂單哦!
本篇文章為大家展示了怎么在python中初始化進(jìn)程池Pool,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。
python的數(shù)據(jù)類型:1. 數(shù)字類型,包括int(整型)、long(長整型)和float(浮點(diǎn)型)。2.字符串,分別是str類型和unicode類型。3.布爾型,Python布爾類型也是用于邏輯運(yùn)算,有兩個(gè)值:True(真)和False(假)。4.列表,列表是Python中使用最頻繁的數(shù)據(jù)類型,集合中可以放任何數(shù)據(jù)類型。5. 元組,元組用”()”標(biāo)識,內(nèi)部元素用逗號隔開。6. 字典,字典是一種鍵值對的集合。7. 集合,集合是一個(gè)無序的、不重復(fù)的數(shù)據(jù)組合。
1、說明
初始化Pool時(shí),可以指定最大流程數(shù)。當(dāng)新請求提交到Pool時(shí),如果池未滿,則創(chuàng)建新流程以執(zhí)行該請求。但是,如果池中的流程數(shù)達(dá)到指定的最大值,則等待該請求,直到池中的流程結(jié)束為止,以之前的流程執(zhí)行新的任務(wù)。
2、實(shí)例
# -*- coding:utf-8 -*- import os, time, random from multiprocessing import Pool def worker(msg): t_start = time.time() print("%s開始執(zhí)行,進(jìn)程號為%d" % (msg,os.getpid())) # random.random()隨機(jī)生成0~1之間的浮點(diǎn)數(shù) time.sleep(random.random()*2) t_stop = time.time() print(msg,"執(zhí)行完畢,耗時(shí)%0.2f\n" % (t_stop-t_start)) def main(): po = Pool(3) # 定義一個(gè)進(jìn)程池,最大進(jìn)程數(shù)3 for i in range(0,10): # Pool().apply_async(要調(diào)用的目標(biāo),(傳遞給目標(biāo)的參數(shù)元祖,)) # 每次循環(huán)將會用空閑出來的子進(jìn)程去調(diào)用目標(biāo) po.apply_async(worker,(i,)) print("----start----") po.close() # 關(guān)閉進(jìn)程池,關(guān)閉后po不再接收新的請求 po.join() # 等待po中所有子進(jìn)程執(zhí)行完成,必須放在close語句之后 print("-----end-----") if __name__ == "__main__": main()
上述內(nèi)容就是怎么在python中初始化進(jìn)程池Pool,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。