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()