Python 穩定線程池是一種多線程技術,可以有效地提高程序的并發性和性能。線程池會提前創建一定數量的線程,并在需要時分配任務給這些線程。
Python 中的線程池通常使用 ThreadPoolExecutor 類來實現。這個類是 Python 3 中的標準庫,它提供了一個可調整大小的線程池。ThreadPoolExecutor 可以確保以固定的速率執行任務,并在需要時根據需要創建線程。
from concurrent.futures import ThreadPoolExecutor def worker(arg): print(f"task {arg} start") time.sleep(2) print(f"task {arg} end") executor = ThreadPoolExecutor(max_workers=3) tasks = [executor.submit(worker, i) for i in range(10)] for future in tasks: print(future.result())
上述代碼中,我們首先導入了 concurrent.futures 包中的 ThreadPoolExecutor 類。接著,定義了一個 worker 函數作為任務的執行函數,它會輸出任務的開始和結束標志,并睡眠 2 秒鐘。
接著,我們創建了一個 max_workers 為 3 的線程池,并將任務提交給線程池進行執行。最后,我們迭代任務列表并打印 future.result() 的結果,這個結果是 worker 函數執行完畢后返回的結果。
通過 ThreadPoolExecutor,我們可以快速地創建一個穩定的線程池,并通過任務分配在多個線程中獨立執行,以達到并發執行提高程序性能的目的。