0
点赞
收藏
分享

微信扫一扫

asyncio学习笔记



目录

​​greelet|yield|asyncio 1​​

​​async|await 4​​

​​Task对象 9​​

​​asyncio.Future对象 12​​

​​异步迭代器 16​​

​​异步上下文管理器 17​​

​​uvloop|FastAPI 19​​



greelet|yield|asyncio​

asyncio学习笔记_asyncio


asyncio学习笔记_python异步_02


asyncio学习笔记_异步_03


asyncio学习笔记_异步_04


遇到IO会自动切换;


async|await​

asyncio学习笔记_异步_05


普通方式:

asyncio学习笔记_python异步_06


协程方式(异步)

asyncio学习笔记_异步_07



asyncio学习笔记_asyncio_08


asyncio学习笔记_异步_09


asyncio.run(func()) # py3.7用此句替代事件循环

asyncio学习笔记_python异步_10


asyncio学习笔记_python异步_11


asyncio学习笔记_asyncio_12



Task对象​

asyncio学习笔记_异步_13


asyncio学习笔记_python异步_14


会立即在事件循环中创建任务对象,使多个任务并发地运行;

示例2、3常用:

asyncio学习笔记_python异步_15


task_list写在函数内,在执行asyncio.run()时事件循环已经创建了,在事件循环内创建任务;

asyncio学习笔记_python异步_16


task_list写在外面,task_list里只能放协程对象,asyncio.wait()会创建事件循环,在事件循环内创建任务;



asyncio.Future对象​

基本不用;

asyncio学习笔记_asyncio_17


asyncio学习笔记_asyncio_18


asyncio学习笔记_python异步_19


asyncio学习笔记_python异步_20



asyncio学习笔记_asyncio_21


异步迭代器​

__aiter__()

__anext__()

async for

asyncio学习笔记_python异步_22


async for语句必须写在协程函数内;


异步上下文管理器​

__aenter__()

__aexit__()

async with

asyncio学习笔记_asyncio_23


async with语句必须写在协程函数内;


uvloop|FastAPI​

asyncio学习笔记_异步_24



asyncio学习笔记_asyncio_25


asyncio学习笔记_异步_26



asyncio学习笔记_python异步_27


asyncio学习笔记_异步_28



asyncio学习笔记_异步_29


asyncio学习笔记_异步_30


luffy是该代码的文件名,app是代码中的app=FastAPI();


asyncio学习笔记_异步_31


asyncio学习笔记_python异步_32





举报

相关推荐

0 条评论