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

Python 線程池模塊之多線程操作代碼

 更新時間:2021年05月20日 10:37:37   作者:簡簡單單OnlineZuozuo  
最近在做一個爬蟲相關(guān)的項目,單線程的整站爬蟲,耗時真的不是一般的巨大,運(yùn)行一次也是心累,所以,要想實現(xiàn)整站爬蟲,多線程是不可避免的,那么python多線程又應(yīng)該怎樣實現(xiàn)呢?今天小編給大家分享下實現(xiàn)代碼,感興趣的朋友一起看看吧

1、線程池模塊

引入

from concurrent.futures import ThreadPoolExecutor

2、使用線程池

一個簡單的線程池使用案例

from concurrent.futures import ThreadPoolExecutor
import time

pool = ThreadPoolExecutor(10, 'Python')

def fun():
    time.sleep(1)
    print(1, end='')


if __name__ == '__main__':
    # 列表推導(dǎo)式
    [pool.submit(fun) for i in range(20) if True]
from concurrent.futures import ThreadPoolExecutor
import time

pool = ThreadPoolExecutor(10, 'Python')

def fun(arg1,arg2):
    time.sleep(1)
    print(arg1, end=' ')
    print(arg2, end=' ')


if __name__ == '__main__':
    # 列表推導(dǎo)式
    [pool.submit(fun,i,i) for i in range(20) if True]
    # 單個線程的執(zhí)行
    task = pool.submit(fun,'Hello','world')
    # 判斷任務(wù)執(zhí)行狀態(tài)
    print(f'task status {task.done()}')
    time.sleep(4)
    print(f'task status {task.done()}')

    # 獲取結(jié)果的函數(shù)是阻塞的,所以他會等線程結(jié)束之后才會輸出
    print(task.result())


 3、獲取結(jié)果

阻塞等待

print(task.result())

批量獲取結(jié)果

for future in as_completed(all_task):
    data = future.result()

阻塞主線程,等待執(zhí)行結(jié)束再執(zhí)行下一個業(yè)務(wù)

# 等待線程全部執(zhí)行完畢
wait(pool.submit(fun,1,2),return_when=ALL_COMPLETED)
print('')

以上就是Python 線程池模塊之多線程操作代碼的詳細(xì)內(nèi)容,更多關(guān)于Python 線程池模塊的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Python3中編碼與解碼之Unicode與bytes的講解

    Python3中編碼與解碼之Unicode與bytes的講解

    今天小編就為大家分享一篇關(guān)于Python3中編碼與解碼之Unicode與bytes的講解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • Pycharm運(yùn)行加載文本出現(xiàn)錯誤的解決方法

    Pycharm運(yùn)行加載文本出現(xiàn)錯誤的解決方法

    今天小編就為大家分享一篇Pycharm運(yùn)行加載文本出現(xiàn)錯誤的解決方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-06-06
  • Python之tkinter文字區(qū)域Text使用及說明

    Python之tkinter文字區(qū)域Text使用及說明

    這篇文章主要介紹了Python之tkinter文字區(qū)域Text使用及說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • Python實現(xiàn)識別圖片內(nèi)容的方法分析

    Python實現(xiàn)識別圖片內(nèi)容的方法分析

    這篇文章主要介紹了Python實現(xiàn)識別圖片內(nèi)容的方法,結(jié)合實例形式分析了tesseract模塊的下載、安裝配置及使用tesseract模塊進(jìn)行圖片識別的相關(guān)操作技巧,需要的朋友可以參考下
    2018-07-07
  • python神經(jīng)網(wǎng)絡(luò)MobileNetV2模型的復(fù)現(xiàn)詳解

    python神經(jīng)網(wǎng)絡(luò)MobileNetV2模型的復(fù)現(xiàn)詳解

    這篇文章主要為大家介紹了python神經(jīng)網(wǎng)絡(luò)MobileNetV2模型的復(fù)現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • django框架auth模塊用法實例詳解

    django框架auth模塊用法實例詳解

    這篇文章主要介紹了django框架auth模塊用法,結(jié)合實例形式詳細(xì)分析了Django框架auth模塊登錄驗證、注銷等基本操作技巧與使用注意事項,需要的朋友可以參考下
    2019-12-12
  • pytorch使用horovod多gpu訓(xùn)練的實現(xiàn)

    pytorch使用horovod多gpu訓(xùn)練的實現(xiàn)

    這篇文章主要介紹了pytorch使用horovod多gpu訓(xùn)練的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • Python使用shutil操作文件、subprocess運(yùn)行子程序

    Python使用shutil操作文件、subprocess運(yùn)行子程序

    這篇文章介紹了Python使用shutil操作文件、subprocess運(yùn)行子程序的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • Python中的OpenCV圖像閾值處理和平滑處理詳解

    Python中的OpenCV圖像閾值處理和平滑處理詳解

    這篇文章主要介紹了Python中的OpenCV圖像閾值處理和平滑處理詳解,OpenCV是一個跨平臺的計算機(jī)視覺庫,可用于開發(fā)實時的圖像處理、計算機(jī)視覺以及模式識別程序,需要的朋友可以參考下
    2023-08-08
  • Django一小時寫出賬號密碼管理系統(tǒng)

    Django一小時寫出賬號密碼管理系統(tǒng)

    這篇文章主要介紹了Django一小時寫出賬號密碼管理系統(tǒng),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04

最新評論