当前位置: 首页 > news >正文

网络和并发 第六节:Python中的协程

一、协程的相关概念

如果都用多线程, 那么在高并发下, cpu大部分的时间都将用于切换线程上下文, 而且线程的切换是在内核态完成的, 会耗费额外的空间和时间,浪费了很多cpu时间片段。

协程(coroutine),又称为微线程,纤程。(协程是一种用户态的轻量级线程)

可以理解为一种在线程里跑的子线程, 它的默认栈空间很小 。 当多个协程在一个线程上运行时, 协程间会切换着运行, 协程的切换完全在用户态完成, 而且时机由程序员来自行调度, 从而使得线程的并发量大大提升。

简单的说:
协程的核心思想就在于执行者对控制流的 “主动让出” 和 “恢复”。相对于,线程此类的 “抢占式调度” 而言,协程是一种 “协作式调度” 方式,协程之间执行任务按照一定顺序交替执行。

不过协程只适用于IO密集型程序(大部分时间在等待), 对于计算密集型程序, 协程的优势并不大, 因为没有给它切换的时间, cpu大部分时间都在工作。

二、定义协程(异步函数)

asyncio库 是用来编写协程代码的库,使用async/await语法。被用作多个提供高性能 Python 异步框架的基础,包括网络和网站服务,数据库连接库,分布式任务队列等。

async关键字定义的函数就是异步函数,也

http://www.jsqmd.com/news/607844/

相关文章:

  • 2026年上海AI推广服务商选型分析:主流品牌能力与适配场景评估 - 小白条111
  • 2026年靠谱天线定制厂家推荐:腾祥电子全频段定制解决通信痛点 - 速递信息
  • 3分钟搞定!免费跨平台资源下载神器全攻略
  • 2026年读书清单,及java技术的巩固
  • 2026年寺庙小程序开发公司:专业定制助力寺院数字化转型(附带联系方式) - 品牌2025
  • 4种突破数字内容壁垒的技术方案:面向研究者与创作者的开源工具指南
  • 网络和并发 第七节: 综合聊天室项目
  • 用STC89C52单片机+HC-SR04超声波模块,手把手教你做一个桌面版“倒车雷达”(OLED显示+蜂鸣器报警)
  • 3步精通UEFI固件分析:从结构解析到安全检测的实战指南
  • 2026年国产恒温恒湿试验箱哪家好/哪个品牌售后好/哪家性价比高/生产厂家有哪些 - 品牌推荐大师
  • TranslucentTB终极指南:轻松打造透明任务栏的Windows美化神器
  • BiliBiliCCSubtitle:智能解析引擎驱动的B站字幕处理效率革命
  • 讲讲重庆成都火锅底料老牌分销商,推荐几家靠谱又性价比高的? - 工业设备
  • vLLM 新参数 performance-mode 能带来多大提升?Qwen3.5 实测告诉你答案
  • 除臭设备生产厂家选购指南:如何辨别与选择正规厂家 - 速递信息
  • 从“本白”到“鲜白”,叙白如何用一杯手作鲜乳冰淇淋重新定义品质 - 速递信息
  • 学习记录:RISC-V CPU实践——从零开始(二)编写汇编程序和C程序
  • 终极指南:30-seconds-of-react如何让你的React TypeScript开发更高效
  • 从SST到MLD:手把手教你用xarray处理CMEMS海洋数据,生成月平均图与全局年平均场
  • 2026年分享火锅底料制造商,三鲜火锅底料定制费用多少 - 工业品牌热点
  • 人大金仓与PostgreSQL开发实战:如何用PostgreSQL经验快速上手国产数据库
  • 机试——刷题总结
  • Limine多协议支持深度解析:Linux、Multiboot和Limine协议的实现原理
  • SpiceAI Cayenne数据加速器:下一代列式存储格式的终极指南
  • 2026最新高端棉麻布料推荐!广东佛山优质面料厂家权威榜单发布 - 十大品牌榜
  • 三大平台智能抢票系统:从技术小白到抢票高手的自动化解决方案
  • Polr安全防护终极指南:保护短链接服务的10个关键步骤
  • 从棋盘格到转换矩阵:手眼标定中的坐标系对齐实战
  • 设计感与实用性并存!2026成都装修设计公司口碑TOP5 - 推荐官
  • WEF部署完全手册:在Linux系统上配置专业级Wi-Fi测试环境