python制作线程池分别放入五个函数
时间: 2024-10-30 20:06:09 浏览: 8
浅谈python 线程池threadpool之实现
在Python中,我们可以使用`concurrent.futures`模块来创建线程池并执行一组函数。以下是一个例子,展示了如何创建一个包含5个线程的线程池,并将五个不同的函数提交给线程池执行:
```python
import concurrent.futures
# 定义需要在单独线程中执行的函数
def function1():
# 函数1的实现...
pass
def function2():
# 函数2的实现...
pass
def function3():
# 函数3的实现...
pass
def function4():
# 函数4的实现...
pass
def function5():
# 函数5的实现...
pass
# 创建一个固定大小的线程池,这里设为5个线程
with concurrent.futures.ThreadPoolExecutor(max_workers=5) as executor:
# 提交函数到线程池
future1 = executor.submit(function1)
future2 = executor.submit(function2)
future3 = executor.submit(function3)
future4 = executor.submit(function4)
future5 = executor.submit(function5)
# 等待所有任务完成后,打印结果或进行其他操作
for future in concurrent.futures.as_completed([future1, future2, future3, future4, future5]):
print(f"Function {future.result()} completed")
```
在这个例子中,每个`submit()`函数会将对应的函数提交给线程池,然后你可以通过`.result()`获取函数的执行结果。注意,线程池并不会立即执行所有任务,而是按照线程的数量逐步执行。
阅读全文