欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python進程池基本概念

 更新時間:2022年03月31日 08:35:44   作者:蘇州程序大白  
這篇文章主要介紹了Python進程池基本概念,當(dāng)創(chuàng)建的子進程數(shù)量不多時,可以直接利用多處理進程中的進程動態(tài)形成需要的進程,下文關(guān)于Python線程池的概念做詳細(xì)介紹,需要的小伙伴可以參考一下

前言:

創(chuàng)建進程池可以形象地理解為創(chuàng)建一個并行的流水線,只需創(chuàng)建一次流水線的消耗,處理接收到的任務(wù)的,不使用進程池。 ,浪費時間。

中方本來沒有進程的,除了python的,使用線程池的語言,是進程的其他線程池(而進程是執(zhí)行業(yè)務(wù)的其他任務(wù))。python的原因(因為Cython的概念),線程編程不同的并行,把線程池的概念轉(zhuǎn)移到了進程中,命名為進程池。

一、python進程池

創(chuàng)建的子進程數(shù)量不多時,可以直接利用多處理進程中的進程動態(tài)形成需要的進程。

如果是上百量甚至巨大上千,手動的去創(chuàng)建進程的工作目標(biāo),此時就可以為多進程模塊提供池的方法。

1、初始化 Pool 時,可以指定一個進程數(shù)

2、當(dāng)有新的請求提交到 Pool 中時

  • 如果池還沒有滿,那么就用創(chuàng)建一個新進程的執(zhí)行該請求;
  • 如果池中的進程達到指定的任務(wù),那么已經(jīng)有多少時間,直到有進程結(jié)束,會用之前的請求進程來執(zhí)行新的任務(wù)。

二、進程池如何使用?

申請()

函數(shù)原型:apply (func, args=()[, kwds={}]])

該函數(shù)傳遞不定參數(shù),同 python 中的應(yīng)用函數(shù)一致,主進程會被阻止函數(shù)執(zhí)行結(jié)束(不建議使用,并且 3.x 以后不再出現(xiàn)使用)

apply_async

函數(shù)原型:apply_async(func[, args=()[, kwds={}[, callback=None]]])

與應(yīng)用一致,但它是非進行不支持的使用支持結(jié)果返回后反對

地圖()

函數(shù)原型:map(func, iterable[, chunksize=None])

池類中的映射表的行為必須基本一致,它會使用第二個進程與先前的結(jié)果返回:

但在實際使用中,參數(shù)是一個調(diào)用,在整個應(yīng)用程序中都需要注意,程序會運行子進程。

map_async()

函數(shù)原型:map_async(func, iterable[, chunksize[, callback]])

與地圖匹配一致,但它是非阻尼的。

close()

關(guān)閉進程池(pool),不再接受新的任務(wù)。

終端()

結(jié)束工作進程,不再處理未處理的任務(wù)。

加入()

主進程停止等待子進程的退出,加入方法要在關(guān)閉或終止使用之后。

三、代碼實列

# 導(dǎo)入相關(guān)multiprocessing包
import multiprocessing

# 創(chuàng)建擁有CPU核心數(shù)量的進程的進程池
pool = multiprocessing.Pool(processes=multiprocessing.cpu_count())

for i in ?range ( 100 ): ##制動等待當(dāng)前任務(wù)的進程結(jié)束# pool.apply(func=pow, args=(i,2))
? ??
? ??

? ? # 不延遲當(dāng)前任務(wù)的進程結(jié)束
? ? pool.apply_async(func= pow , args=(i, 2 ))

# # map函數(shù)到一個列表,延遲返回值
# results = pool.map(func=print, iterable=[i for i in range(10000)])

# # 不延遲等待返回值,未運行完就調(diào)用results會報錯。
# results = poolmap_async(func=print, iterable=[i for i in range(10000)])

#close之后不會有新的進程加入到pool
?pool.close()

#加入函數(shù)等待所有子進程#調(diào)用加入之前,先結(jié)束調(diào)用close函數(shù),否則會出錯。
?pool.join()

# # 結(jié)束工作進程,不再處理未完成的任務(wù)。
# pool.terminate()

四、進程池中的進程和一般的進程有什么區(qū)別?

進程池中的Queue:

  • 如果要使用進程池創(chuàng)建進程,就需要使用multiprocessing.Manager()中的Queue(),而不是multiprocessing.Queue()
  • 使用的方法是一樣的,都已經(jīng)成功了,再用q.put()添加、q.get()等待獲取。

到此這篇關(guān)于Python進程池基本概念的文章就介紹到這了,更多相關(guān)Python進程池內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Kwargs傳遞給Python 中的另一個函數(shù)實現(xiàn)方法

    Kwargs傳遞給Python 中的另一個函數(shù)實現(xiàn)方法

    Python 列出了可以傳遞給程序中的函數(shù)的兩種類型的參數(shù), 非關(guān)鍵字參數(shù)**args和關(guān)鍵字參數(shù) **kwargs ,在本文中,我們將討論如何使用關(guān)鍵字參數(shù)及如何將關(guān)鍵字參數(shù)傳遞給另一個函數(shù),感興趣的朋友跟隨小編一起看看吧
    2023-08-08
  • 使用Python下載歌詞并嵌入歌曲文件中的實現(xiàn)代碼

    使用Python下載歌詞并嵌入歌曲文件中的實現(xiàn)代碼

    這篇文章主要介紹了使用Python下載歌詞并嵌入歌曲文件中的實現(xiàn)代碼,需要借助eyed3模塊,需要的朋友可以參考下
    2015-11-11
  • Python面向?qū)ο蟪绦蛟O(shè)計之靜態(tài)方法、類方法、屬性方法原理與用法分析

    Python面向?qū)ο蟪绦蛟O(shè)計之靜態(tài)方法、類方法、屬性方法原理與用法分析

    這篇文章主要介紹了Python面向?qū)ο蟪绦蛟O(shè)計之靜態(tài)方法、類方法、屬性方法,結(jié)合實例形式分析了Python靜態(tài)方法、類方法、屬性方法相關(guān)概念、原理、用法及相關(guān)操作注意事項,需要的朋友可以參考下
    2020-03-03
  • 神經(jīng)網(wǎng)絡(luò)算法RNN實現(xiàn)時間序列預(yù)測

    神經(jīng)網(wǎng)絡(luò)算法RNN實現(xiàn)時間序列預(yù)測

    這篇文章主要為大家介紹了神經(jīng)網(wǎng)絡(luò)算法RNN實現(xiàn)時間序列預(yù)測示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-04-04
  • Python元組的定義及使用

    Python元組的定義及使用

    這篇文章主要介紹了Python元組的定義及使用,在Python中元組是一個和列表非常類似的數(shù)據(jù)類型,不同之處就是列表中的元素可以修改,而元組之中的元素不可以修改。想具體了解的下小伙伴請參考下面文章的具體內(nèi)容,希望對你有所幫助
    2021-11-11
  • Python OpenCV使用dlib進行多目標(biāo)跟蹤詳解

    Python OpenCV使用dlib進行多目標(biāo)跟蹤詳解

    這篇文章主要為大家介紹了如何使用 dlib 庫在實時視頻中有效地跟蹤多個對象,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)OpenCV有一定幫助,需要的可以參考一下
    2022-03-03
  • Python制作詞云圖代碼實例

    Python制作詞云圖代碼實例

    這篇文章主要介紹了Python制作詞云圖代碼實例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-09-09
  • python實現(xiàn)串口自動觸發(fā)工作的示例

    python實現(xiàn)串口自動觸發(fā)工作的示例

    今天小編就為大家分享一篇python實現(xiàn)串口自動觸發(fā)工作的示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • Python?中strip()函數(shù)詳細(xì)說明及使用方法

    Python?中strip()函數(shù)詳細(xì)說明及使用方法

    strip()函數(shù)是Python字符串方法之一,用于處理字符串的前導(dǎo)和尾隨空白字符,它返回一個新字符串,該字符串是原始字符串去除前導(dǎo)和尾隨空格(包括空格、制表符、換行符等)后的結(jié)果,這篇文章主要介紹了Python?中strip()函數(shù)詳細(xì)說明及使用方法,需要的朋友可以參考下
    2024-02-02
  • python文件和目錄操作方法大全(含實例)

    python文件和目錄操作方法大全(含實例)

    這篇文章主要介紹了python文件和目錄的操作方法,簡明總結(jié)了文件和目錄操作中常用的模塊、方法,并列舉了一個綜合實例,需要的朋友可以參考下
    2014-03-03

最新評論