91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何在Python中使用ThreadPoolExecutor線程池模塊

發布時間:2021-03-17 17:05:10 來源:億速云 閱讀:417 作者:Leah 欄目:開發技術

這篇文章將為大家詳細講解有關如何在Python中使用ThreadPoolExecutor線程池模塊,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

具體如下:

python3內置的有Threadingpool和ThreadPoolExecutor模塊,兩個都可以做線程池,當然ThreadPoolExecutor會更好用一些,而且也有ProcessPoolExecutor進程池模塊,使用方法基本一致。

首先導入模塊

from concurrent.futures import ThreadPoolExecutor

使用方法很簡單,最常用的可能就是map方法和submit+as_completed

注意,一定要使用with,而不要使用for,如果你一定要用for,那么一定要手動進行executor.shutdown,而你使用了with方法的話,再with方法內部已經實現了wait(),在使用完畢之后可以自行關閉線程池,減少資源浪費。

使用map

with ThreadPoolExecutor(max_workers=2) as executor:
  result = executor.map(map_fun, itr_arg)
  '''map_fun:你傳入的要執行的map函數
    itr_arg:一個可迭代的參數,可以是列表字典等可迭代的對象
    基本上和python的map函數一樣
    注意result并不是你map_fun返回的結果,而是一個生成器,如果要從中去結果,你可以使用列表生成式或者其他你想使用的方法
  '''
  for res in result:
    print(res) #這個res就是你map_fun返回的結果,你可以在這里做進一步處理

使用submit+as_completed也可以很靈活

with ThreadPoolExecutor(max_workers=2) as executor:
  future= executor.submit(fun, args)
  '''
  在這里你可以使用for循環來做,返回的是一個future對象
  future_list=[]
  for i in range(max_workers):
    future= executor.submit(fun, args[i])
    future_list.append(future)
  '''
  for res in ac_completed(futrue_list): #這個futrure_list是你future對象的列表
    print(res.result())        #循環遍歷時用.result()來取返回值

關于如何在Python中使用ThreadPoolExecutor線程池模塊就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

扎赉特旗| 吴江市| 天镇县| 宁海县| 农安县| 沁源县| 庆城县| 洛宁县| 凉城县| 新乡县| 友谊县| 惠东县| 保亭| 通化县| 香格里拉县| 阳高县| 旌德县| 合川市| 修文县| 耿马| 西乡县| 左贡县| 冕宁县| 新津县| 阳东县| 景德镇市| 潢川县| 南京市| 道真| 石渠县| 青岛市| 邢台县| 毕节市| 孟州市| 阳原县| 册亨县| 巴彦县| 仁怀市| 古交市| 临沂市| 贵州省|