最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python線程池模塊ThreadPoolExecutor用法分析

 更新時間:2018年12月28日 10:35:11   作者:njulpy  
這篇文章主要介紹了Python線程池模塊ThreadPoolExecutor用法,結合實例形式分析了Python線程池模塊ThreadPoolExecutor的導入與基本使用方法,需要的朋友可以參考下

本文實例講述了Python線程池模塊ThreadPoolExecutor用法。分享給大家供大家參考,具體如下:

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

首先導入模塊

from concurrent.futures import ThreadPoolExecutor

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

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

使用map

with ThreadPoolExecutor(max_workers=2) as executor:
  result = executor.map(map_fun, itr_arg)
  '''map_fun:你傳入的要執(zhí)行的map函數(shù)
    itr_arg:一個可迭代的參數(shù),可以是列表字典等可迭代的對象
    基本上和python的map函數(shù)一樣
    注意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循環(huán)來做,返回的是一個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())        #循環(huán)遍歷時用.result()來取返回值

兩種方式差不多,都可以很好的實現(xiàn)多線程任務,切記一定使用with!

更多關于Python相關內(nèi)容感興趣的讀者可查看本站專題:《Python進程與線程操作技巧總結》、《Python數(shù)據(jù)結構與算法教程》、《Python函數(shù)使用技巧總結》、《Python字符串操作技巧匯總》、《Python入門與進階經(jīng)典教程》、《Python+MySQL數(shù)據(jù)庫程序設計入門教程》及《Python常見數(shù)據(jù)庫操作技巧匯總

希望本文所述對大家Python程序設計有所幫助。

相關文章

  • Python基礎詳解之描述符

    Python基礎詳解之描述符

    這篇文章主要介紹了Python基礎詳解之描述符,文中有非常詳細的代碼示例,對正在學習python基礎的小伙伴們有非常好的幫助,需要的朋友可以參考下
    2021-04-04
  • python?列表套json字典根據(jù)相同的key篩選數(shù)據(jù)

    python?列表套json字典根據(jù)相同的key篩選數(shù)據(jù)

    這篇文章主要介紹了python?列表套json字典根據(jù)相同的key篩選數(shù)據(jù),文章基于python的相關資料展開詳細的內(nèi)容介紹需要的小伙伴可以參考一下
    2022-04-04
  • Pandas讀取行列數(shù)據(jù)最全方法

    Pandas讀取行列數(shù)據(jù)最全方法

    本文主要介紹了Pandas讀取行列數(shù)據(jù)最全方法,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • pytorch的backward()的底層實現(xiàn)邏輯詳解

    pytorch的backward()的底層實現(xiàn)邏輯詳解

    自動微分是一種計算張量(tensors)的梯度(gradients)的技術,它在深度學習中非常有用,這篇文章主要介紹了pytorch的backward()的底層實現(xiàn)邏輯,需要的朋友可以參考下
    2023-11-11
  • Cython處理C字符串的示例詳解

    Cython處理C字符串的示例詳解

    如果你在使用 Cython 加速 Python 時遇到了瓶頸,但還希望更進一步,那么可以考慮將數(shù)據(jù)的類型替換成 C 的類型,所以本文為大家介紹了Cython處理C字符串的方法,希望對大家有所幫助
    2023-01-01
  • python 多線程對post請求服務器測試并發(fā)的方法

    python 多線程對post請求服務器測試并發(fā)的方法

    今天小編就為大家分享一篇python 多線程對post請求服務器測試并發(fā)的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-06-06
  • python selenium 無界面瀏覽器的實現(xiàn)

    python selenium 無界面瀏覽器的實現(xiàn)

    有時我們不想讓瀏覽器窗口跳出來,而是想在后臺進行操作,這就需要用到無界面瀏覽器,本文主要介紹了python selenium 無界面瀏覽器的實現(xiàn),具有一定的參考價值,感興趣的可以了解一下
    2023-10-10
  • PyCharm 解決找不到新打開項目的窗口問題

    PyCharm 解決找不到新打開項目的窗口問題

    這篇文章主要介紹了PyCharm 解決找不到新打開項目的窗口問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • python無法識別vim中文代碼的解決方案

    python無法識別vim中文代碼的解決方案

    這篇文章主要介紹了python無法識別vim中文代碼的解決方案,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • Python struct.unpack

    Python struct.unpack

    Python中按一定的格式取出某字符串中的子字符串,使用struck.unpack是非常高效的。
    2008-09-09

最新評論

肥西县| 咸丰县| 射洪县| 玛沁县| 左云县| 会东县| 通辽市| 海原县| 黔东| 黄浦区| 日土县| 荔波县| 南汇区| 垫江县| 本溪市| 金寨县| 吉安市| 丽水市| 南充市| 柞水县| 新安县| 临朐县| 万州区| 溆浦县| 霸州市| 沛县| 东乌珠穆沁旗| 探索| 文安县| 海门市| 安新县| 青田县| 修文县| 紫阳县| 应城市| 永登县| 连南| 时尚| 砀山县| 平山县| 那曲县|