摘要: 多路复用 总体流程而言,我们想同时检测多个io就绪情况,首先要注册每个监测端口的指定事件,内核中如果端口有事件,会将其抛出,后续调用指定系统调用,获取具体数据。 Select 结构体fd_set 标记fd, 就是一个fd的集合;一个1024位的位集合; 常用宏和函数: FD_ZERO FD_SET 阅读全文
posted @ 2026-07-24 15:25 超级麋鹿 阅读(9) 评论(0) 推荐(0)
摘要: 0、前言与基础知识 首先,网络io是一个基础设施,用于发送指定数据,至于什么数据(文字,视频,语言),业务逻辑和业务功能,不是网络io和C++所考虑的;; 在linux中,io就是fd 就是一个文件。 开发环境: 1、一个TCP连接示例 使用socket进行TCP/UDP的连接流程: 服务器的TCP 阅读全文
posted @ 2026-07-23 20:38 超级麋鹿 阅读(8) 评论(0) 推荐(0)
摘要: 互斥锁和自旋锁 用法上是相似的,具有数据独占的效果; 但是自旋,代表CPU空转,不会直接进入阻塞状态,在linux C++中采用退避策略多次循环空转后未能获取锁后,最后可能移交控制权,线程进入阻塞(上下文线程切换),场景:临界区小,锁内容小。 互斥锁,该线程未获得锁时,直接进入阻塞,等到获得锁时再次 阅读全文
posted @ 2026-07-23 15:32 超级麋鹿 阅读(43) 评论(0) 推荐(0)
摘要: 一/VSC 安装REMOTE SSH 输入用户名 IP 其中 VSCode的SSH配置文件(~/.ssh/config) 请设置好其中参数 如云服务器上的密钥 私钥路径 在VSC上远程为服务器安装 C/C++ CMake tool gdb等程序 sudo yum install gdb 二/简单工程 阅读全文
posted @ 2025-12-24 17:16 超级麋鹿 阅读(378) 评论(0) 推荐(0)