博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python之asyncio三种应用方法
阅读量:4916 次
发布时间:2019-06-11

本文共 1103 字,大约阅读时间需要 3 分钟。

1、直接使用asyncio.run方法

2、同步的效果,用await调用函数
3、创建任务(asyncio.create_task),并发运行任务(await asyncio.gather)

import asyncio#第一种async def aa():    print("我们的门又坏了")    await asyncio.sleep(2)    print("怎么办啊")asyncio.run(aa())# 第二种   同步的效果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())# # 第三种并发# 吃鱼丸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()

  

转载于:https://www.cnblogs.com/aloneindefeat/p/10731454.html

你可能感兴趣的文章
字数统计工具
查看>>
C#实现在注册表中保存信息
查看>>
DAO
查看>>
特别篇:Hyper-v群集模拟实战演示
查看>>
Java中 final、static、abstract区别与联系
查看>>
python工具类之collections
查看>>
Eclipse安装hibernate插件
查看>>
Android类参考---Fragment
查看>>
Java 可中断线程
查看>>
声音推荐【Anaesthesia】Maximilian Hecker强烈推荐
查看>>
地址虚拟机vmware centos6.3 Device eth0 does not seem to be present
查看>>
链表实现单链表创建、排序(升序)
查看>>
Spring旅程(一)为什么使用Spring
查看>>
centos安装桌面和远程连接
查看>>
侠探锦毛鼠之真假白玉堂
查看>>
[mark]如何删除地址栏的记录?
查看>>
python CSV写中文
查看>>
poj3304 Segments
查看>>
Android onNewIntent调用时机
查看>>
命令模式
查看>>