溫馨提示×

溫馨提示×

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

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

Python中線程池模塊之多線程的示例分析

發布時間:2021-05-20 12:32:00 來源:億速云 閱讀:171 作者:小新 欄目:開發技術

這篇文章將為大家詳細講解有關Python中線程池模塊之多線程的示例分析,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

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__':
    # 列表推導式
    [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__':
    # 列表推導式
    [pool.submit(fun,i,i) for i in range(20) if True]
    # 單個線程的執行
    task = pool.submit(fun,'Hello','world')
    # 判斷任務執行狀態
    print(f'task status {task.done()}')
    time.sleep(4)
    print(f'task status {task.done()}')

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

 3、獲取結果

阻塞等待

print(task.result())

批量獲取結果

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

阻塞主線程,等待執行結束再執行下一個業務

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

python有哪些常用庫

python常用的庫:1.requesuts;2.scrapy;3.pillow;4.twisted;5.numpy;6.matplotlib;7.pygama;8.ipyhton等。

關于“Python中線程池模塊之多線程的示例分析”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

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

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女