asyncio异步编程(三)

server/2024/9/19 9:49:26/ 标签: 笔记

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所以效率高。


http://www.ppmy.cn/server/24994.html

相关文章

未来已来:深入探索LLAMA3驱动的人工智能革命

大家好!相信大家对于AI(人工智能)的发展已经有了一定的了解,但你是否意识到,到了2024年,AI已经变得如此强大和普及,带来了我们从未想象过的便利和创新呢?让我们一起来看看AI在这个时…

http基础了解

超文本传输协议(HTTP)是一个用于传输超媒体文档(例如 HTML)的应用层协议。它是为 Web 浏览器与 Web 服务器之间的通信而设计的,但也可以用于其他目的。HTTP 遵循经典的客户端—服务端模型,客户端打开一个连…

pytorch-解决过拟合之动量与学习率衰减

目录 1. momentum动量2. pytorch增加momentum3. 学习率衰减4. 学习率衰减的方式4.1 loss连续几次无改善衰减 4.2 步进式衰减 1. momentum动量 下图给出了梯度公式和增加了动量的梯度公式,β z k z^k zk其中的 z k z^k zk就是上次的梯度,而β决定了 w k …

【React】反向代理和修改打包后的目录

反向代理 前提是做了反向代理: 安装 http-proxy-middleware npm i http-proxy-middleware在src/下新建 setupProxy.js const proxy require("http-proxy-middleware");module.exports function(app) {app.use(proxy("/api", {target: &qu…

Sublime Vim模式配置:q关闭当前标签页

在Sublime安装目录下的->Packages文件夹下新建User文件夹创建文件Vintage.sublime-commands 路径为Sublime安装目录->Packages->User->Vintage.sublime-commands文件内容如下[{"caption": ":w - Save","command": "save"}…

java中的代理模式

静态代理 public interface SmsService {void sent(String message); } class SmsServiceImpl implements SmsService{Overridepublic void sent(String message) {System.out.println("这是发送的信息:"message);} } class SmsServiceProxy implements SmsService{…

边OTG边充电芯片LDR6500

随着科技的飞速发展,智能移动设备已成为我们生活中不可或缺的一部分。而在这些设备的连接与数据传输中,Type-C接口以其高效、便捷的特性逐渐占据了主导地位。OTG(On-The-Go)技术则进一步扩展了Type-C接口的功能,使得设…

Linux 解压报错

在linux上面解压压缩包,有可能遇到一下问题,现提供正确语句供参考 一、tar命令解压.zip文件 在使用tar命令解压.zip格式文件时,有时会遇到一下异常 gzip: stdin has more than one entry--rest ignored tar: Child returned status 2 ta…

人脸识别系统

一、引言 随着科技的飞速发展,人脸识别技术已经成为现代社会中一个重要的科技应用领域。人脸识别系统,顾名思义,是通过分析人的面部特征进行身份识别的一种技术。近年来,这一技术在公共安全、金融服务、智能门禁、手机解锁等多个领域得到了广泛应用,极大地提升了社会的安…

【NTN 卫星通信】NTN应该使用FDD还是TDD双工模式

1 概述 现在主流的商用地面通信系统一般都支持FDD和TDD两种模式,实用于不同的频段。那么卫星通信也需要有这两种模式吗? 2 NTN 双工模式分析 在考虑TDD模式时,需要设置保护时间,以防止终端同时发射和接收。该保护时间直接取决于终…

Kafka 3.x.x 入门到精通(06)——Kafka进阶

Kafka 3.x.x 入门到精通(06)👉👉👉👉 Kafka进阶 3. Kafka进阶3.1 Controller选举3.2 Broker上线下线3.3 数据偏移量定位3.4 Topic删除3.5 日志清理和压缩3.7 页缓存3.8 零拷贝3.9 顺写日志3.10 Linux集群部…

webpack中mode、NODE_ENV、DefinePlugin、cross-env的使用

本文讲的全部知识点,都是和webpack相关的。如果你之前有疑问,那本文一定能帮你搞清楚。 问题来源一般是类似下面代码(webpack.json中): "scripts": {"dev": "cross-env NODE_ENVdevelopmen…

Agent AI智能体:未来社会的无形引领者

目录 前言1. 智能体说明1.1 定义1.2 作用1.3 类型介绍1.4 核心技术 2. 技术进步与创新2.1 机器学习的进步2.2 深度学习与神经网络2.3 强化学习2.4 转移学习与多任务学习2.5 自然语言处理(NLP)的革新2.6 知识图谱与推理 3. 行业领域应用场景3.1 游戏行业3.2 医疗健康3.3 金融服务…

uniapp 自定义 App启动图

由于uniapp默认的启动界面太过普通 所以需要自定义个启动图 普通的图片不可以过不了苹果的审核 所以使用storyboard启动图 生成 storyboard 的网站:初雪云-提供一站式App上传发布解决方案

Ai动漫100%过原创,两分钟一条作品,简单上手,小白可做日入1000+

2024年最新版的视频号创作者分成计划带来了一本收益秘籍!我们即将进入一个全新的领域——AI动漫,这是百分之百的原创内容!目前,这个市场还是一片蓝海,我们的AI可以在短时间内创作出热门视频。 下 载 地 址 &#xf…

【酱浦菌-爬虫项目】四种方法爬取百度首页信息

项目原理: 首先,定义了四个函数,每个函数都有不同的功能: func1():发送一个GET请求到百度网站,并获取响应内容,演示如何使用requests库来获取网页内容。 func2():发送一个GET请求到…

富格林:利用正规技能规避黑幕欺诈

富格林悉知,尽管现在现货黄金市场存在较大的盈利潜力,但也不是随随便便的操作就可以带来收益的,关键在投资者是否掌握合理正规的操作技能,并且是否具备戒备黑幕欺诈防备风险的能力,如果不小心落入黑幕欺诈陷阱中&#…

Java安全之Mojarra JSF反序列化

JavaServer Faces,新一代的Java Web应用技术标准,吸收了很多Java Servlet以及其他的Web应用框架的特性。JSF为Web应用开发定义了一个事件驱动的、基于组件的模型。 其中常用的是Sun(现在的Oracle)发布的Mojarra和Apache发布的MyF…

Vue3框架

Vue3框架 一.使用create-vue搭建Vue3项目二.组合式API - setup选项1.setup选项的写法和执行时机2.setup中写代码的特点3. script setup 语法糖 三.组合式API - reactive和ref函数1. reactive2. ref3. reactive 对比 ref 四.组合式API - computed五.组合式API - watch1. 侦听单个…

JMeter 请求头信息配置详解

在进行 Web 测试和 API 测试时,正确配置 HTTP 请求头是关键步骤之一,尤其当使用诸如 JMeter 这样的强大工具时。在本文中,我将详细介绍如何在 JMeter 中有效地配置和管理HTTP请求头。 在 JMeter 中添加和配置 HTTP 请求头 步骤 1: 打开 HTT…