python Task具体的作用及用法是什么
Admin 2022-06-30 群英技术资讯 479 次浏览
Tasks用于并发调度协程,通过asyncio.create_task(协程对象)创建Task对象,使协程能够加入事件循环,等待调度执行。除使用asyncio.create_task()函数外,还可使用低级loop.create_task()或ensure_future()函数。推荐使用手动实例Task对象。
Python3.7中添加到asyncio.create_task函数。在Python3.7之前,可以使用低级asyncio.ensure_future函数。
import asyncio async def func(): print(1) await asyncio.sleep(2) print(2) return "返回值" async def main(): print("main开始") # 创建协程,将协程封装到一个Task对象中并立即添加到事件循环的任务列表中,等待事件循环去执行(默认是就绪状态)。 task1 = asyncio.create_task(func()) # 创建协程,将协程封装到一个Task对象中并立即添加到事件循环的任务列表中,等待事件循环去执行(默认是就绪状态)。 task2 = asyncio.create_task(func()) print("main结束") # 当执行某协程遇到IO操作时,会自动化切换执行其他任务。 # 此处的await是等待相对应的协程全都执行完毕并获取结果 ret1 = await task1 ret2 = await task2 print(ret1, ret2) asyncio.run(main())
知识点扩展:
python asyncio 协程调用task步骤
import asyncio async def compute(x, y): print("Compute %s + %s ..." % (x, y)) await asyncio.sleep(1.0) return x + y async def print_sum(x, y): result = await compute(x, y) print("%s + %s = %s" % (x, y, result)) loop = asyncio.get_event_loop() loop.run_until_complete(print_sum(1, 2)) loop.close()
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要介绍了python中进程间通信及设置状态量控制另一个进程,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
这篇文章主要给大家介绍的关于python glom模块的使用,小编觉得蛮有用的,因此分享给大家作参考,感兴趣的朋友可以参考学习,下面我们就一起来看看吧。
这篇文章主要介绍了Python数据分析之Pandas Series对象,文章基于python的相关资料展开详细内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
这篇文章主要介绍了python-pandas创建Series数据类型的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
这篇文章主要介绍Python绘图库Matplotlib的用法,下文有绘制线型图、子图、散点图等等示例,有这方面学习需求的朋友可以参考学习,希望大家阅读完这篇文章能有所收获,下面就跟随小编来学习一下吧。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008