python线程池动态创建线程
时间: 2023-05-22 22:01:35 浏览: 74
可以使用 ThreadPoolExecutor 类来创建 Python 线程池,该类可以动态地创建线程。以下是一个示例代码:
```python
from concurrent.futures import ThreadPoolExecutor
def worker(num):
print(f"Worker {num} is running")
if __name__ == '__main__':
with ThreadPoolExecutor(max_workers=5) as executor:
for i in range(10):
executor.submit(worker, i)
```
在这个例子中,我们使用 ThreadPoolExecutor 类创建了一个最大线程数为 5 的线程池,并通过 submit() 方法向线程池提交了 10 个任务。线程池会自动分配线程来执行这些任务。每个任务都会调用 worker() 函数,并传入一个数字参数。运行这个代码,你会看到类似下面的输出:
```
Worker 0 is running
Worker 1 is running
Worker 2 is running
Worker 3 is running
Worker 4 is running
Worker 5 is running
Worker 6 is running
Worker 7 is running
Worker 8 is running
Worker 9 is running
```
这表明线程池成功地创建了 5 个线程,并用它们来执行 10 个任务。注意,这个例子中的 worker() 函数只是一个简单的打印语句,你可以根据自己的需要来编写具体的任务函数。