logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

C++ 编译模型与工程机制全解析:从 include 到链接与 ABI

本文深入解析C++编译模型的核心机制,帮助Java/Android开发者理解C++工程本质。关键点包括:1)#include本质是文本复制而非模块导入;2)编译检查语法正确性,链接检查实现完整性;3)声明与定义分离原则;4)静态库与动态库的特性差异;5)ABI对二进制兼容的决定作用。文章建立了完整的工程排错模型:编译错误检查语法,链接错误检查实现缺失,运行时错误检查库依赖。最终指出:掌握C++工程

#c++
从 Reactor 到 HashMap:一条打通事件驱动与复杂度的学习链路

本文系统梳理了C++服务端开发中Reactor模型的核心知识链路。首先指出理解事件驱动模型需要打通从epoll机制到数据结构性能的完整认知。重点解析了Reactor的三层架构(epoll发现事件、Reactor分发事件、handler处理事件)和动态注册机制,澄清了epoll"状态变化才通知"的工作特性。通过复杂度分析(O(1)/O(n)),论证了unordered_map在快

#学习#算法#网络 +1
C++ 服务端进阶(四)—— 多 Reactor + 协程:真正的高并发模型(融合版)

本文构建了一个现代高并发服务端架构模型,将多Reactor并发模型与协程执行模型相结合。核心设计采用主Reactor负责accept连接,多个子Reactor线程处理IO事件,每个子Reactor内部使用协程执行具体任务。该架构实现了多核利用、无锁并发(通过连接绑定固定线程)和高性能处理。关键技术包括:线程独立的事件循环、协程不跨线程恢复、主Reactor仅负责连接接收。最终形成的模型融合了epo

#开发语言#c++#网络 +2
C++ 服务端进阶(五)—— Connection + 协程:面向对象的异步模型(工程版完整实现)

本文实现了从函数式异步到面向对象异步的架构升级,核心将连接处理逻辑封装为Connection对象。相比第四篇的多Reactor+协程架构,第五篇通过Connection类实现了: 连接实体化,包含fd、缓冲区和协程执行逻辑 生命周期自主管理,提供closeSelf()接口 协程逻辑内聚,通过run()方法实现异步读写 代码结构优化,删除Server类,新增Connection类 最终形成&quot

#c++#网络#服务器 +1
C++ 服务端进阶(三)—— Reactor + 协程:现代异步模型(附完整项目结构与代码)

本文探讨如何将C++20原生协程与epoll和Reactor模式结合,构建最小可运行版本。作者指出C++协程仅提供基本机制,需自行整合事件循环、协程恢复等组件。通过Reactor调度epoll事件,协程实现同步式异步编程,解决回调地狱问题。文章详细设计了项目结构,包含Task、Reactor、SocketUtil等模块,重点阐释DetachedTask的作用和Reactor保存协程句柄的必要性。最

#开发语言#c++#服务器 +1
C++ 服务端进阶(二)—— 多 Reactor + 线程模型:高并发服务端架构(工程版)

本文介绍了从单Reactor升级到多Reactor+多线程模型的关键改进。单Reactor存在CPU利用率低、无法利用多核等问题。多Reactor模型通过主线程负责accept、子线程处理连接的方式,实现了:1)多核利用;2)避免锁竞争;3)高并发架构。核心实现包括ReactorThread封装线程+Reactor、ReactorThreadPool实现负载均衡分发,以及修改Acceptor将连接

#架构#开发语言#c++ +2
C++ 服务端进阶(一)—— 从 Reactor 到 Connection:服务骨架设计(工程版)

本文介绍了如何将基于lambda的简单Reactor模式升级为面向对象的Connection模型。通过建立EventHandler抽象接口,实现了Reactor、Acceptor和Connection的三层架构:Reactor作为调度层统一管理事件循环,Acceptor负责接入新连接,Connection处理具体连接的读写和生命周期。这种架构解决了函数式demo在状态管理、缓冲区处理等方面的不足,

#服务器#网络#c++
C++ 高性能服务端进阶路线—— 从 epoll + Reactor 到多线程与协程的系统化路径

摘要: 本文为C++服务端开发提供清晰进阶路线:从epoll基础到现代异步架构。核心路径分为三步:1)Reactor工程化(建立Connection对象模型,解决函数驱动问题);2)多Reactor线程模型(主从Reactor分工,提升并发能力);3)协程集成(用同步写法实现异步逻辑,优化执行流)。关键要义在于构建"服务端运行时系统",而非简单处理socket。学习顺序应严格遵

#c++#网络
C++ 并发核心模型总结—— 从阻塞 IO 到 Reactor + 协程的完整理解(附 mini epoll + Reactor demo)

本文系统讲解了C++网络编程中的核心概念:阻塞IO(线程等待数据)、非阻塞IO(线程不等待)、epoll(事件通知机制)、Reactor(事件调度模型)和协程(可暂停执行的代码)。通过一个miniReactor示例,展示了如何用epoll监听事件、Reactor调度处理、handler执行业务逻辑的整体流程。关键点在于理解:epoll负责发现事件,Reactor负责调度事件,协程/Handler负

#开发语言#c++#网络
C++ 高性能网络服务骨架(四)—— 从阻塞模型到 Reactor:服务端并发模型进阶

本文探讨如何通过事件驱动模型解决高并发场景下的线程阻塞问题。文章首先回顾了三种传统模型(单线程阻塞、线程池+阻塞IO、服务骨架)的局限性,指出核心问题在于"一个连接占用一个线程"的阻塞模式。然后重点介绍了epoll机制的工作原理,它通过非阻塞IO和事件通知机制,实现单线程管理多个连接。文章阐述了Reactor模型的核心思想,即将线程与连接解耦,改为绑定事件,并展示了完整的认知架

#网络#服务器#c++
    共 160 条
  • 1
  • 2
  • 3
  • 16
  • 请选择