自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 仿muduo库实现高并发服务器

Reactor模式是一种事件驱动的高性能网络编程模型,通过多路复用IO统一监听多个客户端的连接请求,再以非阻塞的方式将就绪事件派发给对应的处理线程/进程去处理。Reactoe模式是构建高并发服务器的核心技术。1.单Reactor单线程事件监听、事件派发、事件处理、业务处理都在同一个线程中完成。一个Reactor监听所有的事件(连接事件,IO事件),事件就绪后再由该Reactor派发给对应的事件处理器处理事件,如果是IO事件还要将事件处理后的数据交给业务处理逻辑。2.单Reactor多线程。

2025-08-02 21:41:26 1112

原创 通过动态加载DLL文件实现文件名遍历保存

参数:LPCTSTR lpLibFileName接收DLL的文件名或者路径,如果是文件名会按照如下顺序搜索。功能:将指定的DLL文件加载到当前进程的内存空间,并返回DLL文件句柄,用于访问DLL中的函数和资源。输出:FARPROC是函数指针类型,成功返回知道那个函数的地址;输出:成功返回DLL的句柄(实例句柄HINSTANCE);功能:从DLL文件中获取指定的函数地址,进而调用该函数。

2025-06-07 14:02:34 256

原创 DLL动态库实现文件遍历功能(Windows编程)

DLL动态库实现文件遍历功能(Windows编程)

2025-06-06 14:15:50 401

原创 windows编程实现文件拷贝

Windows编程实现文件拷贝功能(含源码)

2025-06-05 11:12:24 735

原创 timerfd定时器&&时间轮定时器

⽆疑应该是第40s的时候。这⾥,我们就⽤到了智能指针shared_ptr,shared_ptr有个计数器,当计数为0的时候,才会真正释放⼀个对象,那么如果连接在第10s进⾏了⼀次通信,则我们继续向定时任务中,添加⼀个30s后(也就是第40s)的任务类对象的shared_ptr,则这时候两个任务shared_ptr计数为2,则第30s的定时任务被释放的时候,计数-1,变为1,并不为0,则并不会执⾏实际的析构函数,那么就相当于这个第30s的任务失效了,只有在第40s的时候,这个任务才会被真正释放。

2025-04-28 21:03:17 705

原创 select、poll、epoll实现多路复用IO并对比差异

详解select、poll、epoll实现的多路复用

2025-04-20 20:33:01 1010

原创 五种IO模型

介绍五种IO模型:阻塞IO、非阻塞IO、信号驱动IO、多路复用/转接IO、异步IO

2025-04-17 08:48:42 784

原创 数据链路层ARP协议

详解数据链路层ARP协议

2025-04-08 17:18:24 486

原创 数据链路层以太网协议

详解数据链路层以太网协议

2025-04-08 16:02:26 1039

原创 网络层IP协议

详解IP协议

2025-04-06 12:31:57 1041

原创 TCP协议

详解TCP通信协议

2025-04-03 16:29:18 1079

原创 UDP协议

详解UDP协议

2025-03-30 19:45:57 367

原创 HTTP协议手写服务器

利用Http协议手写一个服务器,处理Http协议的请求和应答

2025-03-30 16:34:40 903

原创 stringstream的使用

详解stringstream的三种常见用法

2025-03-29 15:28:54 311

原创 应用层协议HTTP

详解HTTP应用层协议

2025-03-28 13:13:42 962

原创 自定义协议的网络计算器项目

基于TCP通信,自定义协议的网络计算器项目源码

2025-03-27 17:03:04 241

原创 封装Socket编程接口

详解Socket编程接口与TCP/UDP的关系以及封装Socket编程接口源代码

2025-03-20 16:33:48 431

原创 序列化和反序列化&&TCP粘包问题

以Jsoncpp为例详解序列化与反序列化,同时讲解如何解决TCP通信时的粘包问题

2025-03-14 18:25:02 953

原创 TCP协议支持全双工原因&&TCP发送接收数据是生产者消费者模型

详解TCP协议支持全双工原因以及TCP发送接收数据是生产者消费者模型

2025-03-13 17:38:09 453

原创 Socket编程:TCP网络编程项目

Socket编程:TCP网络编程项目链接

2025-03-13 14:49:15 346

原创 从零实现高并发内存池

高并发内存池

2025-03-03 15:19:55 991

原创 C++单例模式

详解C++单例模式:饿汉模式和懒汉模式

2025-02-05 18:03:17 630

原创 C++特殊类设计

详解C++特殊类设计:不能拷贝的类、只能在堆上创建对象的类、只能在栈上创建对象的类、不能继承的类

2025-02-05 16:08:19 462

原创 C++智能指针

详解C++智能指针(三种智能指针、shared_ptr的循环引用问题、定制删除器、模拟实现shared_ptr)

2025-02-03 23:29:48 925

原创 C++异常处理

详解C++异常处理

2025-01-25 21:59:10 783

原创 C++线程库

详解C++11线程库,包括thread类、mutex锁、原子操作以及条件变量

2025-01-24 16:04:03 883

原创 C++11新特性

详解C++11中新增的新特性:列表初始化、auto和decltype、右值引用和移动语义、完美转发、lambda表达式、移动构造和移动赋值、可变参数模板、function包装器、bind包装器

2025-01-21 16:20:51 883

原创 哈希表及模拟实现

详解哈希表,以及哈希表开放地址法和链地址法,还有哈希表模拟实现的源代码

2025-01-11 21:38:16 882

原创 unordered_set、unordered_map容器 VS set、map容器

unordered_set、unordered_map容器对比set、map容器的不同

2025-01-11 21:35:48 224

原创 使用红黑树封装set和map

使用红黑树封装set和map容器

2025-01-08 19:58:53 1026

原创 父进程对于子进程等待的四种解决方式

介绍对于父进程等待子进程问题的四种解决方式

2024-12-20 16:49:50 457

原创 UDP对比TCP的网络编程接口

概述并对比UDP和TCP网络编程中客户端和服务端的基本流程以及函数接口

2024-12-10 18:43:45 698

原创 Linux网络编程:IP地址字符串格式与in_addr格式的相互转换

详解IP地址字符串格式与in_addr格式的相互转换

2024-12-02 20:39:05 809

原创 Socket编程:UDP网络编程项目

UDP网络编程的三个简易项目:回显服务器、翻译器和聊天室

2024-11-30 21:02:08 694

原创 Linux系统:网络

详解Linux网络编程的基本知识:网络协议、网络传输流程、Socket编程知识等

2024-11-30 12:55:11 1601

原创 Git远程操作

详解Git的远程操作,包括但不限于推送文件、拉取文件、忽略特殊文件、配置别名等操作

2024-11-26 10:58:30 737

原创 Git分支管理

详解Git分支管理,包括但不限于分支管理以及分支管理策略

2024-11-25 22:33:06 1110

原创 Git基本操作

详解Git基本操作:包括但不限于创建并配置本地仓库、修改文件、版本回退、撤销修改、删除文件等操作

2024-11-25 17:51:50 1195

原创 Linux系统:线程

超详解Linux系统线程:线程概念、线程控制、线程局部存储、线程封装、线程互斥、线程同步、线程池、线程日志、线程安全的单例模式、死锁

2024-11-17 16:55:42 807

原创 动态规划31:1218. 最长定差子序列

详解动态规划31:1218. 最长定差子序列(子序列问题)

2024-11-16 17:12:35 402

空空如也

空空如也

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

TA关注的人

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