python 线程池列子
时间: 2024-05-09 21:13:19 浏览: 109
Pool_Thread.rar_C 线程池_thread pool_多线程 队列_控制台多线程_线程池 队列
当我们需要同时处理多个任务时,我们可以使用 Python 中的线程池来提高程序的效率。Python 的标准库 `concurrent.futures` 提供了线程池的实现,我们可以使用其提供的 `ThreadPoolExecutor` 类来创建线程池。
下面是一个简单的 Python 线程池例子:
```python
import concurrent.futures
import time
# 定义一个任务函数,该函数将会被线程池中的线程执行
def task(num):
print(f"Thread {num} is running...")
time.sleep(2) # 模拟任务执行需要 2 秒钟时间
print(f"Thread {num} is finished.")
# 创建一个最大容纳 3 个线程的线程池
with concurrent.futures.ThreadPoolExecutor(max_workers=3) as executor:
# 向线程池中提交 5 个任务
for i in range(5):
executor.submit(task, i)
```
在上面的例子中,我们首先定义了一个名为 `task` 的函数,它将被用来模拟任务的执行。然后,我们使用 `ThreadPoolExecutor` 类创建了一个最大容纳 3 个线程的线程池,并向线程池中提交了 5 个任务。当线程池中有空闲线程时,它们会自动从任务队列中取出任务并执行。
阅读全文