Python中线程池怎样使用,如何引入线程池模块
Admin 2022-07-25 群英技术资讯 585 次浏览
引入
from concurrent.futures import ThreadPoolExecutor
一个简单的线程池使用案例
from concurrent.futures import ThreadPoolExecutor import time pool = ThreadPoolExecutor(10, 'Python') def fun(): time.sleep(1) print(1, end='') if __name__ == '__main__': # 列表推导式 [pool.submit(fun) for i in range(20) if True]
from concurrent.futures import ThreadPoolExecutor import time pool = ThreadPoolExecutor(10, 'Python') def fun(arg1,arg2): time.sleep(1) print(arg1, end=' ') print(arg2, end=' ') if __name__ == '__main__': # 列表推导式 [pool.submit(fun,i,i) for i in range(20) if True] # 单个线程的执行 task = pool.submit(fun,'Hello','world') # 判断任务执行状态 print(f'task status {task.done()}') time.sleep(4) print(f'task status {task.done()}') # 获取结果的函数是阻塞的,所以他会等线程结束之后才会输出 print(task.result())
阻塞等待
print(task.result())
批量获取结果
for future in as_completed(all_task): data = future.result()
阻塞主线程,等待执行结束再执行下一个业务
# 等待线程全部执行完毕 wait(pool.submit(fun,1,2),return_when=ALL_COMPLETED) print('')
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
今天给大家分享的一个比较有趣的内容,就是在python中现实凯撒密码,凯撒密码算是比较简单的加密技术,下文有实例代码供大家参考,感兴趣的朋友跟随小编一起看看吧。
Python文件路径乱码的解决方法是怎么,代码怎么写
这篇文章主要介绍了python中显存回收问题解决方法,文章提供一个实例问题和处理的思路,具有一定的参考价值,需要的小伙伴可以参考一下
本文主要介绍了Pycharm远程连接服务器跑代码的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
这篇文章主要介绍了在Python中如何让字典保持有序,文章基于python的相关资料展开详细内容,需要的小伙伴可以参考一下
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008