Python中线程池怎样使用,如何引入线程池模块
Admin 2022-07-25 群英技术资讯 1182 次浏览
这篇文章主要讲解了“Python中线程池怎样使用,如何引入线程池模块”,文中的讲解内容简单、清晰、详细,对大家学习或是工作可能会有一定的帮助,希望大家阅读完这篇文章能有所收获。下面就请大家跟着小编的思路一起来学习一下吧。引入
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中的取整方法:向上取整math.ceil(x)、向下取整math.floor(x)、四舍五入round()、向零取整int()。
深入解析Python中的多进程,小编通过实际的案例向大家展示了操作过程,简单易懂,有需要的朋友可以参考了解看看,那么接下来就跟随小编的思路来往下学习吧,希望对大家学习或工作能有帮助。
这篇文章主要介绍了Python流程控制if条件选择与for循环,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的朋友可以参考一下
这篇文章主要介绍了安装pytorch时报sslerror错误的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
对于初学者来说,在使用pycharm上会有一些问题,对此小编给大家分享一些pycharm设置方法,对大家熟悉pycharm有一定的帮助。需要的朋友可以参考参考。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008