
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
文章从 IP 基础概念切入,白话讲解 IPv4 的本质、地址分类、公有 / 私有 IP 等核心内容,帮零基础读者快速建立认知;随后聚焦 C++ 开发者必备技能,深入解析字节序转换、IP 格式互转、sockaddr_in结构体等关键知识点,搭配IP 转换、合法性校验、Socket 绑定 IP + 端口三段可直接运行的实战代码,实现理论与落地的无缝衔接;同时,整理了 IP 相关的面试高频考点,涵盖选择

本文基于muduo网络库设计实现了一套高性能HTTP服务器,采用模块化分层架构,支持静态资源、动态路由、中间件扩展等功能。核心优化包括:1)基于Reactor事件驱动模型实现高并发处理;2)采用基数树路由匹配算法提升查找效率;3)通过零拷贝文件传输和智能缓存机制优化静态资源访问;4)支持异步线程池处理耗时任务。测试结果表明,该服务器在长连接场景下QPS达23.6万,性能远超主流Web框架(如Fla

摘要:Linux系统下键盘输入涉及完整的硬件-内核-用户态交互链路。硬件层通过扫描码触发中断,内核层由输入子系统将扫描码转换为标准字符并存入缓冲区,用户态程序通过系统调用读取。开发中可通过修改终端模式实现实时按键响应,需注意中断处理不可阻塞、内核缓冲机制等关键点。典型应用场景包括嵌入式系统开发、终端工具定制等,正确处理该链路对构建稳定输入系统至关重要。

TcpServer是Muduo网络库中TCP服务器的核心控制器,采用主从Reactor模型实现高性能网络服务。其主要功能包括: 架构设计: 主Reactor(mainLoop)负责接收新连接 从Reactor(IO线程池)处理连接读写 通过轮询方式均衡分配连接 核心机制: 使用Acceptor接收连接 通过EventLoopThreadPool管理IO线程 用ConnectionMap管理所有活跃

本文详细解析了Muduo网络库中的Acceptor类实现。Acceptor作为TCP连接接收器,主要负责监听端口、接受新连接,运行在主事件循环(mainReactor)中。其核心功能包括:创建非阻塞监听socket,绑定地址和端口,设置socket复用选项;通过Channel管理监听socket事件,当有新连接时触发handleRead回调;处理文件描述符耗尽(EMFILE)等边界情况,采用预置i

本文详细解析了Muduo网络库中EPollPoller的实现,它是Linux下基于epoll系统调用的IO多路复用组件。EPollPoller通过封装epoll_create/epoll_ctl/epoll_wait系统调用,实现了Poller抽象接口,主要包括事件轮询(poll)、通道更新(updateChannel)和移除(removeChannel)等功能。核心设计亮点包括:1)使用状态机(

本文详细解析了Muduo网络库中的Socket类设计与实现。Socket类作为原生socket文件描述符的轻量级封装,采用RAII机制确保资源自动释放,提供bind/listen/accept等核心操作的面向对象接口,并封装了TCP_NODELAY、SO_REUSEADDR等高性能网络编程必备选项。实现上通过SocketsOps模块转发系统调用,支持IPv6兼容,并针对调试需求提供TCP状态查询功

本文详细介绍了Muduo库中的线程池实现ThreadPool。该线程池基于生产者-消费者模型,采用互斥锁保护共享资源,通过双条件变量(notEmpty_/notFull_)实现高效同步。核心特性包括:支持有界任务队列、线程初始化回调、优雅启停机制等。实现上使用RAII管理锁和线程资源,while循环防止虚假唤醒,全量异常捕获确保稳定性。设计亮点包括:退化执行机制(无工作线程时同步执行任务)、精准唤

本文详细解析了Muduo网络库中CountDownLatch的实现,这是一个基于互斥锁和条件变量的线程同步工具。文章首先介绍了CountDownLatch的类定义和核心功能,包括wait()、countDown()和getCount()三个主要接口。随后深入剖析了实现细节,重点讲解了RAII锁管理、while循环防止虚假唤醒、notifyAll()确保唤醒所有等待线程等关键设计。文章还通过典型场景

本文介绍了Muduo网络库中的Mutex.h实现,该文件封装了POSIX互斥锁,提供了线程安全的互斥机制。主要内容包括:1) 通过MutexLock类封装原生pthread_mutex_t,增加线程持有检查和断言验证;2) 使用RAII模式的MutexLockGuard实现自动加解锁;3) 引入Clang线程安全注解进行静态检查;4) 通过MCHECK宏检查系统调用返回值。该设计解决了原生互斥锁易








