asyncio异步编程(三)

1.异步迭代器

迭代器:内部实现__iter__()和__next__()方法的对象。

可迭代对象:内部实现__iter__()方法,并且可以返回迭代器的对象。

异步迭代器:实现__aiter__()和__anext__()方法的对象。

异步可迭代对象:内部实现__aiter__()方法,并且可以返回迭代器的对象。

可迭代对象或者迭代器可以被for循环。

async for遍历方式使用时,必须写在协程函数内。

2.异步上下文管理器

上下文管理器:之前做的操作,之后做的操作。

对象中定义__aenter__()和__aexit__()方法来对async with语句中的环境进行控制。该对象支持async with方式拿到该对象。必须嵌套在协程函数中使用。

用法:在操作前打开什么东西,操作后又关闭什么东西。这种场景下使用较多。

一般都是封装好的接口。

3.uvloop补充

是asyncio的事件循环的替代方案。事件循环>默认asyncio的事件循环。

fastAPI内部使用了uvicorn,所以效率高。也是因为uvicorn内部的事件循环使用的是uvloop所以效率高。

相关推荐
The_Second_Coming26 分钟前
MySQL 5.7 学习笔记
笔记·学习·mysql
kobesdu31 分钟前
〔ROS2 实战笔记-1〕Navigation2 导航框架解析
笔记·机器人·ros·路径规划
摩西蒙1 小时前
软考计算机组成原理学习笔记-1
笔记·学习·软件工程
中屹指纹浏览器1 小时前
2026指纹浏览器性能优化实战:多环境并发与资源占用管控技术
经验分享·笔记
雾喔1 小时前
【学习笔记2】快速上手调用 AI API & Prompt Engineering
人工智能·笔记·学习
lkforce2 小时前
MiniMind学习笔记--安装部署
笔记·python·学习·minimind
zhangrelay3 小时前
机器人工程专业:Lubuntu 26.04 + ROS2 Lyrical Luth 入门、进阶、精通全指南
笔记·学习
不想看见4043 小时前
Merge k Sorted Lists 优先队列--力扣101算法题解笔记
笔记·算法·leetcode
ID_180079054733 小时前
如何使用 Python 调用小红书笔记评论 API 时进行并发控制?
开发语言·笔记·python
自不量力的A同学3 小时前
MateClaw v1.0.418 发布
笔记