欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

正确理解协程

最编程 2024-10-08 10:13:53
...
import asyncio

# 定义一个异步函数(协程)
async def say_after(delay, what):
    # 等待指定的时间
    await asyncio.sleep(delay)
    # 打印消息
    print(what)

# 定义另一个异步函数
async def main():
    # 同时启动两个协程,并等待这2个协程结束
    await say_after(1, 'hello')
    await say_after(2, 'world')

# 运行主函数
asyncio.run(main())

正确理解

当执行这句 await say_after(1, 'hello')  将会交出程序控制权,等待 say_after(1, 'hello')执行完,当然系统也有机会执行其他协程(看系统调度)。

await  后面必须跟协程,而不是普通函数。