当前位置:python教程 > Python基础教程 > python之asyncio三种应用方法

python之asyncio三种应用方法

  • Python基础教程
  • 发布时间:2020-05-31 17:30:06 作者:python学习 来源:py教程
  • 浏览量:3406
  • 本文有332个文字,大小约为2KB,预计阅读时间1分钟 更新时间:2022年06月16日 22:06:34

原文标题:python之asyncio三种应用方法

python之asyncio三种应用方法:

1、直接使用asyncio.run方法

import asyncio
#第一种
async def aa():    
    print("我们的门又坏了")    
    await asyncio.sleep(2)    
    print("怎么办啊")
asyncio.run(aa())

2、同步的效果,用await调用函数

async def fun1():
    print("增强体育锻炼,提高免疫力")
    await asyncio.sleep(3)
    print("才能保证身体健康,诸事顺利")
async def fun2():
    await asyncio.sleep(5)
    print("这个周末天气不错")
    await asyncio.sleep(8)
    print("可是你就是不想出去")
async def min():
    await fun1()
    await fun2()if __name__ == "__main__":
    asyncio.run(min())

3、创建任务(asyncio.create_task),并发运行任务(await asyncio.gather)

arr = []
async def produce():
    for i in range(100):
        await asyncio.sleep(1)
        arr.append(i)
        print("小明放了一个鱼丸,现在锅里还有%s个鱼丸"%len(arr))
async def consumer():
    while True:
        await asyncio.sleep(2)   #很关键
        if len(arr)>=10:  #各一个判断条件
            arr.pop()
            print("mony吃了一个鱼丸,现在锅里还有%s个鱼丸"%len(arr))
async def main():
    t1 = asyncio.create_task(produce())   #创建任务
    t2 = asyncio.create_task(consumer())
    await asyncio.gather(t1,t2) #并发运行任务asyncio.run(main())  #调用函数main()

[版权声明]

本文标题:python之asyncio三种应用方法作者:python学习

本文链接:http://www.ccpit.org.cn/jichu/jc5726.html——此文章系本站原创/整理,转载请标明出处、原标题、链接

  • [db:关键词]
  • Python