python 进程池的两种不同实现方法示例
作者:ponponon
这篇文章主要为大家介绍了python 进程池的两种不同实现示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
方式一:使用 multiprocessing 库
from loguru import logger
import multiprocessing
def start_request(message: str) -> int:
try:
logger.debug(message)
except Exception as error:
logger.exception(error)
if __name__ == "__main__":
pool = multiprocessing.Pool(processes=2)
for message in ['haha', 'hehe']:
pool.apply_async(start_request, (message,))
pool.close()
pool.join()方式二:使用 concurrent.futures 的 ProcessPoolExecutor
from loguru import logger
import multiprocessing
from concurrent.futures import ProcessPoolExecutor
def start_request(message: str) -> int:
try:
logger.debug(message)
except Exception as error:
logger.exception(error)
if __name__ == "__main__":
pool = ProcessPoolExecutor(
max_workers=2
)
for message in ['haha', 'hehe']:
pool.submit(start_request, message)
pool.shutdown(wait=True)以上就是python 进程池的两种不同实现示例的详细内容,更多关于python 进程两种实现的资料请关注脚本之家其它相关文章!
