python threadpoolexcutor 示例
以下是一个Python ThreadPoolExecutor的示例代码:
import concurrent.futures
import time
def worker(message):
print(f"Start processing: {message}")
time.sleep(2)
return f"Completed: {message}"
if __name__ == '__main__':
messages = ["message1", "message2", "message3", "message4", "message5"]
with concurrent.futures.ThreadPoolExecutor(max_workers=3) as executor:
results = executor.map(worker, messages)
for result in results:
print(result)
在这个示例中,我们定义了一个worker函数,它的参数是一个消息,它会花费2秒的时间来处理这个消息,并返回一个带有"Completed:"前缀的字符串。
我们使用了Python的concurrent.futures.ThreadPoolExecutor类来创建一个具有最大工作线程数为3的线程池。然后我们使用executor.map方法来启动每个工作线程来处理消息,该方法将返回所有工作线程的结果。
最后,我们遍历结果并将每个消息的处理结果打印出来。由于我们使用了线程池,因此处理消息的顺序可能会有所不同。
原文地址: https://www.cveoy.top/t/topic/L67 著作权归作者所有。请勿转载和采集!