自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 网络io学习理解(二)select、poll、epoll、reactor模式

本文总结了select、poll、epoll三种I/O多路复用机制及Reactor模式的核心概念。select采用位图管理文件描述符,存在1024数量限制;poll改用链表结构突破限制,但仍是O(n)复杂度;epoll通过事件驱动机制实现高效管理,支持水平触发(默认)和边沿触发两种模式。Reactor模式将I/O管理转为事件驱动,通过回调函数处理不同事件。文章详细介绍了各机制的使用流程、关键结构体和函数实现,并给出了Reactor模式的具体设计示例,包括connection结构体、事件注册函数及accept

2025-09-22 17:30:54 901

原创 网络io学习理解(一)一请求一线程

网络I/O发展历程:从阻塞I/O到异步I/O的演进 本文系统介绍了网络I/O的发展历程和关键技术。网络I/O主要包括两个阶段:数据从网卡到内核缓冲区,再从内核到用户空间。其发展经历了阻塞I/O、非阻塞I/O、I/O多路复用、信号驱动I/O和异步I/O五个阶段。详细分析了select、poll、epoll等I/O多路复用技术的实现原理和优缺点,其中epoll采用红黑树和事件驱动机制,支持10万级连接。同时介绍了Reactor模式和协程技术,对比了不同I/O模型的性能特点。最后通过socket编程实例,展示了从

2025-09-21 19:22:01 560

转载 [特殊字符]️ VS Code 中 GNU Global 配置问题排查与解决指南

GNU Global 需要正确安装并配置到系统的 PATH 环境变量中,VS Code 及其相关扩展才能调用它。

2025-09-11 19:22:37 345

原创 ml_collections报错问题解决

ml_collections报错解决方案

2024-09-15 21:00:13 602

原创 求取二叉数或者多叉树的深度

二叉树跟多叉树求取深度

2024-08-22 12:23:48 483 1

原创 Linux中VS Code 报错preLaunchTask“C/C++:gcc.exe生成活动文件”已终止,退出代码为 -1的解决方案

修改launch.json和tasks.json文件解决VS Code 报错preLaunchTask“C/C++:gcc.exe生成活动文件”已终止,退出代码为 -1

2024-03-17 11:11:49 4316 1

原创 指针知识自学

malloc函数申请空间时,是在堆空间里面申请空间,返回的是无类型指针,所以进行强制类型转化。当你使用完这个指针,进行释放的时候free(指针名),同时要将指针置为NULL,不然会成为野指针。hello是存放在字符串常量区中,无法更改,此时只是指针p指向它,无法通过p[0]='H'来更改。不能正常打印,在执行下一个函数的一瞬间,会清空上一个函数的值,滞留性。函数调用的时候,功能函数存在栈空间里面,会随着函数调用结束而释放,堆空间则不会自动释放。*(p+1)此时的p会增加相应的函数变量类型大小的位置。...

2022-07-14 20:56:10 137 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除