您好,登錄后才能下訂單哦!
本篇內容介紹了“python中ThreadPoolExecutor的使用方法”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
說明
1、ThreadPoolExecutor構造實例時,輸入max_workers參數,設定線程池中最多可同時運行的線程數。
2、使用submit函數將需要執行的任務(函數名和參數)提交到線程池中,然后返回任務的句柄(類似于文件和繪圖)。注意,submit不是堵塞的,而是立即返回。
實例
# !usr/bin/env python # -*- coding:utf-8 _*- from concurrent.futures import ThreadPoolExecutor import time # 參數times用來模擬下載的時間 def down_video(times): time.sleep(times) print("down video {}s finished".format(times)) return times executor = ThreadPoolExecutor(max_workers=2) # 通過submit函數提交執行的函數到線程池中,submit函數立即返回,不阻塞 task1 = executor.submit(down_video, (3)) task2 = executor.submit(down_video, (2)) # done方法用于判定某個任務是否完成 print("任務1是否已經完成:",task1.done()) # cancel方法用于取消某個任務,該任務沒有放入線程池中才能取消成功 print("取消任務2:",task2.cancel()) time.sleep(4) print("任務1是否已經完成:",task1.done()) # result方法可以獲取task的執行結果 print(task1.result())
“python中ThreadPoolExecutor的使用方法”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。