自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 systemd 自启动脚本(openppp2)

【代码】systemd 自启动脚本(openppp2)

2025-12-25 14:10:11 34

原创 moodycamel::ConcurrentQueue 清空队列的方法论

T item;// 元素自动处理// 对于指针类型的特化版本。

2025-12-19 20:21:42 156

原创 C++ 中频事件队列的设计与实现

本文提出了一种C++中频事件队列设计方案,针对2M EPS量级的量化交易场景。核心采用Strand模型,确保同一股票代码事件严格有序处理,同时实现不同股票事件的并行执行。关键技术包括:1) 无锁多生产者队列;2) 64字节对齐的Strand结构消除伪共享;3) 手动管理的调度链表优化缓存性能等。

2025-12-18 19:29:34 2129

原创 linux shell查看内存频率

sudo dmidecode -t memory | grep -i speed

2025-12-18 18:00:29 75

原创 TMUX终端开启应用程序。

tmux new -d -s op2 "cd ~/op2; ./start.sh"

2025-12-18 10:20:22 94

原创 Linux 下堆栈打印及手动DUMP转储

【代码】Linux 下堆栈打印及手动DUMP转储。

2025-12-18 09:38:58 108

原创 O(log N) 对数计算

Windows 计算器是 log10(N)、而log(N) = log2(N)2、通过 Windows 10/11 计算器、以10为底换底计算方法。3、通过 Windows 10/11 计算器、自然对数换底。计算器输入:100 ln / 2 ln。1、通过 Google 数学计算器。2.4、计算 log2(N)

2025-12-16 13:14:29 130

原创 C++ CRTP 替代虚函数

CRTP(Curiously Recurring Template Pattern)是一种 C++ 编程设计模式,类似于 RAII、SFINAE、这些东西。即派生类继承以自身为模板参数的基类模板,这样子呢,在 C++ 编译替换期间时,它可以知道模版类型信息的,所以,可以调用目标的成员函数。

2025-12-16 09:53:55 401

原创 C++ 标准库实现容器元素打乱。

【代码】C++ 标准库实现容器元素打乱。

2025-12-15 14:22:01 208

原创 高频行情事件队列

本文分析了高频行情处理系统的性能瓶颈,提出了改进方案。原系统采用静态哈希分配算法导致负载不均,存在单线程处理瓶颈。新方案引入StrandQueue机制,通过CAS原子操作实现多线程安全访问,保持消息顺序处理的同时提高并行度。系统采用两级调度结构:主队列管理器维护所有股票队列,调度链表动态管理活跃队列,多个驱动线程竞争执行权实现负载均衡。该设计解决了热点股票处理瓶颈,提高了系统吞吐量和资源利用率。

2025-12-12 20:03:38 1586

原创 从券商SDK消息到达,开始运行到下单,再到定位(下单请求)整个过程非常冗余,以下仅先探索前面队列驱动及优化部分。

而且在我的新设想当中,已经不会再存在前面这么多冗余架构,这是没有意义的,额外增加性能开销成本,从一个队列传给另外一个队列,然后多重队列开销,要知道这东西最好的就是一个全局并发队列是性能最好的解决方案,即便是面对高频也是毫无问题,因为自选锁的开销很低,这里的队列,我们直接用 std::list 就可以,但我们需要自定义 std::allocator 内存分配器。其实你知道的,这个是错误的,正确的做法命名是:(next_index_) % handler_ptrs_.size(),来获得派发的上下文索引。

2025-12-12 16:40:02 382

原创 C++ OS相关。

【代码】C++ OS相关。

2025-12-12 14:49:18 248

原创 xorcrypt (C++) 加解密

【代码】xorcrypt (C++) 加解密。

2025-12-12 14:45:29 78

原创 mapcrypt (C++) 加解密

【代码】mapcrypt (C++) 加解密。

2025-12-12 14:44:12 98

原创 C++ 浮点数封装。

【代码】C++ 浮点数封装。

2025-12-09 16:28:36 233

原创 C++ 循环展开\AVX\SSE对比

【代码】C++ 循环展开\AVX\SSE对比。

2025-12-09 13:34:20 118

原创 C++ 单核最快查找固定小数组元素方法

【代码】C++ 单核最快查找固定小数组元素方法。

2025-12-09 13:27:26 93

原创 C++ 标准库并行查找。

【代码】C++ 标准库并行查找。

2025-12-09 10:59:02 89

原创 Linux shell 搜索指定后缀名文件,并复制到指定目录。

4、find /目标目录 -name "*.a" -type f -print0 | xargs -0 cp -t /目标路径。3、find /目标目录 -name "*.a" -type f -exec cp -p {} /目标路径 \;5、find /目标目录 -name "*.a" -type f -exec cp -i {} /目标路径 \;6、find /目标目录 -name "*.a" -type f -exec cp -u {} /目标路径 \;

2025-12-08 16:01:05 232

原创 C++ 设置CPU亲和性

【代码】C++ 设置CPU亲和性。

2025-12-08 15:25:52 832

原创 C++ 17 枚举目录资源。

枚举目录资源及递归枚举, namespace fs = std::filesystem;

2025-12-08 15:25:04 269

原创 C++ 获得上次错误代码及文本信息。

【代码】C++ 获得上次错误代码及文本信息。

2025-12-08 15:23:14 70

原创 C++ 获取CPU名。

【代码】C++ 获取CPU名。

2025-12-08 15:21:03 93

原创 Shell 自动修改编译时间及自增版本号

【代码】Shell 自动修改编译时间及自增版本号。

2025-12-05 22:19:07 81

原创 C++ abs (求绝对值)

【代码】C++ abs (求绝对值)

2025-12-05 16:26:31 87

原创 C++ ConcurrentTwoStepQueue:多阶段并发队列

ConcurrentTwoStepQueue:三阶段并发队列 本文提出了一种创新的三阶段并发队列模型ConcurrentTwoStepQueue,通过时序分离技术解决传统并发队列在计算效率与顺序保证之间的矛盾。该设计包含三个关键阶段: 并行Begin阶段:多个线程同时处理不同元素的OnBegin计算,计算顺序与入队顺序无关,最大化利用多核CPU 线性End阶段:严格按序列号顺序处理计算结果,确保最终一致性,通过ends_ack_指针实现顺序重整 有限并行回调阶段:使用CAS机制控制事件回调的并发度,在保证顺

2025-12-05 11:32:46 1194

原创 C++ 并发双阶段队列设计原理与实现

并发双阶段队列设计实现了高效的任务处理机制,通过分离入队与处理阶段提升吞吐量。核心特点包括: 双阶段隔离:入队(Enqueue)与处理(TryBegin/TryEnd)分离,减少锁争用 原子操作:使用自旋锁(SpinLock)保证关键操作的线程安全 状态跟踪:通过递增ID序列管理任务生命周期 异常处理:skip_集合记录失败任务,避免重复处理 扩展接口:虚函数设计支持自定义处理逻辑 该结构适用于高并发场景,如IO密集型任务和实时计算,通过批量处理(DoEvents)和内存预分配优化性能。锁粒度主要集中在en

2025-12-04 16:55:52 1607

原创 MemoryStream C++

【代码】MemoryStream C++

2025-12-04 10:54:28 164

原创 FileStream C++

【代码】FileStream C++

2025-12-04 10:52:09 119

原创 VC++ 设置当前编译源文件的默认字符集

摘要:该代码片段是用于设置程序字符集编码的预处理指令。当编译器版本(MSC_VER)大于等于1600时,会执行#pragma指令将执行字符集设置为UTF-8编码。这种设置主要用于确保程序能够正确处理多语言字符,特别是在Visual Studio等支持该指令的开发环境中。该技术常见于需要国际化支持的软件开发中。

2025-12-04 10:40:29 68

原创 GetNanosecondsTickCount 函数(Win32/Linux vDSO)

【代码】GetNanosecondsTickCount 函数(Win32/Linux vDSO)

2025-12-04 10:01:02 98

原创 VC++ 控制台启用ANSI颜色支持(Windows)

/ 启用ANSI颜色支持。

2025-12-04 09:58:41 76

原创 Linux 查看网卡型号

查看插在 PCI 总上的网卡型号信息。

2025-12-03 09:40:22 100

原创 C++ 标量哈希及SSE2矢量哈希算法(压U高性能版本)

请在 Release 下测试性能,Debug 它性能不行。

2025-12-03 01:52:16 294

原创 Linux C++ 打印堆栈

编译器 -fvisibility=default 要设置为默认可见,否则符号信息解不出来。

2025-12-02 20:47:45 112

原创 C++ 把整数转换为中文字符串(支持万亿即兆处理)

该代码实现将整数转换为中文数字字符串的功能。主要特点包括:1) 支持正负数处理;2) 按四位分组处理,支持"万"、"亿"、"兆"等单位;3) 正确处理"零"的显示规则,避免连续多个零;4) 特殊处理"一十"开头的数字;5) 清理末尾多余的零。算法通过分组处理、单位拼接和边界条件检查,实现了数字到中文的准确转换。

2025-12-02 20:06:55 114

原创 GCC/CLANG likely\unlikely 宏定义实现。

(x), 1)!(x), 0)

2025-12-02 16:32:34 82

原创 Linux C++ 程序设置 DUMP

添加手动指定DUMP路径:kernel.core_pattern = /tmp/core-%e-%p-%t。# 如果出现:下面的内容,意味着是 apport 管理的(Ubuntu 18.04 LTS 以后扩展)cat /proc/sys/kernel/core_pattern # 执行命令。临时禁用:sudo service apport stop。或者是手动修改 /etc/sysctl.conf 文件。sysctl -p 命令执行生效就可以。以下是程序自己设置 DUMP。

2025-12-02 11:06:07 117

原创 C++ SSE/AVX/SHA/AES指令集检查,用于程序定向优化。

【代码】C++ SSE/AVX/SHA/AES指令集检查,用于程序定向优化。

2025-12-02 10:14:24 214

原创 SIMD/SSE2 减法及性能测试

【代码】SIMD/SSE2 高性能累积减法与标量累积减法实现及性能测试。

2025-12-02 09:08:40 80

Intel Smart Sound Technology (ISST) Driver

J4105/J4125 NUC/Notebook PC ISST Driver J4105/J4125 NUC/笔记本电脑 ISST声卡驱动

2024-08-01

serverspeeder2 锐速(TCP/IP单边加速)

支持:“Windows XP/2003” 操作系统平台(含:32/64位程序)

2022-09-20

sscli20.zip

Microsoft .NET Framework 2.0 FCL/BCL/RUNTIME,.NET虚拟机实现源代码!

2022-09-20

serverspeeder 锐速

serverspeeder 锐速, 一:支持 “Windows Server 2016/2012/2008” x86_64 服务器平台。 二:支持 “Windows Desktop 7/8” x86_64 桌面平台

2022-09-20

空空如也

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

TA关注的人

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