- 博客(47)
- 收藏
- 关注
原创 多线程网络编程,IOCP与锁实现数据同步性能测试
IOCP(I/O Completion Port)是Windows系统提供的高性能网络通信模型,适用于高并发服务器开发。相比传统one-thread-per-client模型,IOCP通过异步处理和系统内核调度,显著减少了线程切换开销和系统级操作时间消耗。文章详细讲解了IOCP核心API(如CreateIoCompletionPort、WSARecv等)及实现原理,并通过线程安全队列的性能测试对比(IOCP vs 互斥体),证明IOCP在写入性能上优势明显
2026-06-28 12:30:49
221
原创 QT调试查看QT内部数据时显示无可用信息,未为 Qt5Cored.dll 加载任何符号
解决QT调试时无法查看内部数据的问题,缺少pdb调试数据库文件
2026-05-29 21:25:52
382
原创 Windows开发,ini文件的读写操作
INI文件简介与操作 INI文件(初始化文件)是Windows系统中用于存储配置信息的文本文件,以.ini为后缀。其结构由多个section(节)和key-value(键值对)组成,格式清晰易读。Windows提供专用API函数(如GetPrivateProfile/WritePrivateProfile系列)来读写INI文件,支持对指定文件进行读取、修改等操作。
2026-04-30 21:49:23
311
原创 C++开发,利用mutex解决多线程环境下非线程安全数据的处理问题
本文讨论了多线程编程中的数据竞争问题及其解决方案。通过示例代码展示了在多线程环境下对共享变量count进行非同步修改会导致不可预期的结果。介绍了使用C++中的mutex互斥锁来解决这个问题,通过lock()和unlock()方法确保线程安全。文章最后指出mutex是解决多线程竞争的一种方法,但可能存在更高效的解决方案。
2026-03-27 20:08:56
220
原创 srs配合ffmpeg进行视频推流
本文介绍了SRS视频服务器的安装与使用。SRS支持RTMP、RTSP、WebRTC等多种流媒体协议,首先讲解了通过apt安装依赖和从Git仓库获取源码的步骤,然后详细说明了编译运行SRS的方法。文章演示了使用ffmpeg进行RTMP桌面推流,并展示了通过VLC播放器进行RTMP和FLV协议拉流的完整流程,包括推流命令和拉流地址设置。最后提供了SRS的基本使用示例,帮助读者快速搭建简单的直播服务器系统。
2026-02-28 19:50:19
343
原创 Windows开发,制作开发软件安装程序(二)
本文介绍了AdvancedInstaller安装包制作工具的基本使用方法。首先提供了软件下载官网地址,然后详细讲解了通过通用模板创建安装包的过程,重点介绍了四个核心功能模块:产品详细信息(可设置软件协议)、文件和文件夹(添加程序文件)、快捷方式(创建桌面/开始菜单快捷方式)以及环境变量设置(解决库文件依赖问题)
2025-10-29 22:38:17
785
原创 Windows下C++开发,用代码实现文件运行、删除文件以及忽略C4996警告和设置程序运行模式
本文讲述了使用WindowsAPI删除指定文件或文件夹以及忽略C4996编译警告
2025-09-28 21:47:45
701
原创 Windows开发,制作开发软件安装程序(一)
本篇文章介绍了如何在Windows下利用Enigma Virtual Box和Inno Setup制作程序安装包
2025-07-26 16:30:07
1949
原创 VSCode配置编译和调试CMake工程代码
本文介绍了在VSCode中配置CMake工程进行gdb调试的完整流程。首先需要配置tasks.json文件实现Debug模式下的CMake编译任务,包括设置工作目录、执行命令和依赖关系。然后配置launch.json调试文件,指定可执行程序路径、调试参数和预执行任务。重点说明了不同构建类型的输出路径设置方法,通过CMake语法将Debug和Release版本输出到不同目录。配置完成后可在VSCode中直接进行断点调试,但需注意只有Debug版本才支持调试功能。
2025-06-29 15:00:38
1003
原创 Windows下C++开发,利用CImage和设备上下文实现屏幕指定区域截图
本文介绍C++语言开发如何利用Windows API实现屏幕捕获截图
2025-03-29 10:32:17
1235
原创 MFC开发,给对话框添加定时器
定时器的主要功能是设置以毫秒为单位的定时周期,然后进行连续定时或单次定时。定时器是用于设置有规律的去触发某种动作所用的,这种场景也是软件中经常可以用到的,比如用户设置规定时间推送提示的功能,又比如程序定期向服务器请求某种数据时,等等功能都需要使用定时器来完成这样的操作。QT和MFC中都用添加定时器的方法,我们这里先来介绍在MFC中添加定时器的方法。
2024-10-26 11:32:01
1110
原创 沁恒CH32V307开发板移植lvgl V9版本图形库
本篇文章主要介绍lvgl9.1版本移植到CH32V307开发板上,移植中出现的问题以及解决方案
2024-05-26 11:46:45
2243
3
原创 web服务器解决http请求出现跨域问题(c++服务器后端解决方案)
本篇文章介绍了,c++后端服务器如何配合nginx来解决前端访问跨域问题,并给出了实际场景的部分样例参考代码
2024-04-19 22:59:19
2021
原创 解决Qt下debug调试出现“Unable to create a debugging engine.“
本篇文章说明并解决了,在QT下进行Debug调试时出现"Unable to create a debugging engine."问题的解决方案
2024-03-25 10:31:03
2896
1
原创 MFC开发,解决在给控件添加变量时,出现“未能返回新代码元素。可能是语法错误“的报错问题
本篇文章解决了VS下进行MFC开发,由于VS自身的解析BUG导致控件添加变量失败的问题
2024-02-26 11:48:20
1618
1
原创 如何修改已安装Qt开发工具的开发组件
本篇文章介绍了如何使用[Qt维护](MaintenanceTool.exe)修改Qt配置的组件,以及解决了配置过程中出现的两个问题:缺少存储库的配置和缺少qt.563.qtserialbus这两个问题的解决方案
2024-01-29 11:04:51
1767
原创 解决vs2019下进行跨平台开发,出现引用的头文件显示无法打开,但是可以通过编译的问题
本篇文章解决了vs2019进行跨平台开发,出现引用的头文件无法打开,但是编译没有问题的报错解决方法:利用vs自带的方案进行解决
2024-01-12 10:04:59
2509
2
原创 C++ MySQL开发环境配置(Windows&Linux)
上篇文章我们介绍了MySQL数据库的安装,本篇文章接着MySQL安装详细介绍了MySQL在Windows和Linux下开发环境的配置。MySQL提供了可供开发的官方库文件,但在MySQL数据库开发之前需要将官方提供的库文件配置到开发的项目中,才能进行数据库开发的操作。
2023-11-20 20:08:05
969
1
原创 MySQL的安装及配置远程链接(Windows&Linux下安装)
本篇文章介绍了在Windows和Linux环境下安装MySQL以及远程连接MySQL数据库的配置,用于日常使用和学习以及开发所用。
2023-10-29 18:55:11
1989
1
原创 vs2019及以上版本使用ssh服务连接Linux系统
本篇文章介绍了vs2019及以上版本如何通过ssh服务连接Linux虚拟机进行项目开发,及开机自启动ssh服务
2023-06-22 16:42:01
4341
1
原创 Windows&Linux共享文件夹之利用Linux系统创建共享文件夹
用Linux提供的方式去创建共享文件夹,来进行Windows和Linux之间的交互
2023-06-13 20:38:06
2167
1
Qt 5.12.12pdb调试数据库文件(MSVC2017)
2025-10-21
Dependency Walker工具
2025-02-26
漏洞扫描工具x-scan
2024-09-06
Linux交叉编译器,arm-2009q3压缩包
2024-01-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅