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

Linux15-epoll、数据库

Reactor模型:

1.poll

1.po使用链表管理文件描述符,对监测的文件描述符没有上限限制.

2.文件描述符集尽在应用层创建,需要实现应用层和内核层的反复拷贝

3.需要应用层对集合表进行遍历,寻找到达的事件

4.只能工作在水平触发模式(低速模式),不能工作在边沿触发模式(高速模式)

2.epoll

1.使用树型结构(红黑树)管理文件描述符,提高查找效率

        树型结构的特点:提高数据的查找效率,

                                     遍历时间复杂度为O(2logN)

2.文件描述符集合创建在内核,避免了应用层和内核层的数据拷贝

3.直接向应用层返回到达的io事件的集合,不需要进行遍历查找

2.1操作流程:

1.创建文件描述符集合了  epoll_create();

2.将关注的文件描述符加入到集合epoll_ctl();

3.等待IO事件到达epoll_wait();

4.根据不同的IO事件处理不同的任务

int epoll_create(int size)
功能:创建并打开一个epoll的文件描述符集合

参数:

size:最多允许监测的文件描述的个数

返回值:

成功:代表集合的文件描述符

失败:-1

http://www.dtcms.com/a/56155.html

相关文章:

  • k8s概念及k8s集群部署(Centos7)
  • 基于 Python 实现问卷数据分析的详细示例
  • AI编程工具节选
  • 【商城实战(11)】解锁商品搜索与筛选功能,提升用户购物体验
  • 数据结构与算法(两两交换链表中的结点)
  • 鬼泣:动画2
  • 桂链:区块链模型介绍
  • 【贪心算法2】
  • Manus详细介绍,Manus核心能力介绍
  • go map的声明和使用
  • windows 平台如何点击网页上的url ,会打开远程桌面连接服务器
  • 学校地摊尝试实验
  • 《Python基础教程》第2-4章笔记:列表和元组、字符串、字典
  • 数据结构基础(一)
  • DeepSeek × 豆包深度整合指南:工作流全解析
  • 专业学习|多线程、多进程、多协程加速程序运行
  • 08react基础-react原理
  • 【js逆向】图灵爬虫练习平台 第十五题
  • bash: uwsgi: 未找到命令
  • 档案AI审核1
  • Python MongoDB速成教程
  • C# 异步任务队列封装
  • 测试直播postman+Jenkins所学
  • fiddler everywhere 绿色永久版
  • windows自动锁屏,并且要输入密码。如何取消?
  • 13 【HarmonyOS NEXT】 仿uv-ui组件开发之Avatar组件进阶指南(四)
  • Go语言分布式ID生成策略优选:UUID、Snowflake、XID、ObjectID、Krand性能对比评测
  • vite:初学 p5.js demo 画圆圈
  • vulnhub靶场之【digitalworld.local系列】的vengeance靶机
  • TMS320F28P550SJ9学习笔记6:SCI所有寄存器__结构体寄存器方式配置 SCI通信初始化__库函数发送测试