北极熊不吃企鹅宝宝
搜索文章
首页
Halo
关于
= 768 && isOpen) { isOpen = false; setTimeout(() => enableScroll(document.body), 200); }" >
enableScroll(document.body), 200);" x-transition:enter="transition ease duration-300" x-transition:enter-start="opacity-0" x-transition:enter-end="opacity-100" x-transition:leave="transition ease duration-300" x-transition:leave-start="opacity-100" x-transition:leave-end="opacity-0" style=" position: fixed; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0, 0, 0, 0.5); z-index: 1001; overscroll-behavior: none; " >
enableScroll(document.body), 200)" >
首页
Halo
关于
全部
默认分类 (0)
AI (1)
计算机知识 (5)
使用教程 (6)
MLSys (3)
AI infra (3)
锁与同步机制完全指南
锁与同步机制完全指南 一份从硬件基础到无锁数据结构、覆盖用户态与内核态的系统性参考。 阅读建议:第 1–3 部分是地基,务必读;第 4–8 部分按需查阅;第 10 部分(实践)和第 11 部分(延伸阅读)随时回看。 目录 并发的根本问题 硬件基础 原子操作与无锁基础 自旋锁家族 阻塞锁 读写分离 协
作者:CherryYang
发布时间:2026-07-14
分类:
计算机知识
标签:
#
锁
Workqueue 机制解析
嵌入式存储系统中的 Workqueue 机制解析——以 dpax_sched_work 为例 核心结论:dpax_sched_init_work / dpax_sched_add_work 实现了一套仿照 Linux kernel workqueue 设计的单线程延迟执行机制,核心思想是"线程只创建
作者:CherryYang
发布时间:2026-07-14
分类:
计算机知识
标签:
#
数据结构
,
#
Linux
并发下锁的初始化问题
并发下锁的初始化:懒加载的鸡生蛋陷阱与 PTHREAD_MUTEX_INITIALIZER 范式 核心结论:在并发环境里"等到第一次用才去初始化一把锁"几乎总是错的——因为序列化这次初始化又需要另一把锁,于是陷入循环。正确做法是让锁在还没有并发的时刻(加载期 / 启动期)就准备好,或者用一个"本身不
作者:CherryYang
发布时间:2026-06-16
分类:
计算机知识
标签:
#
锁
X-Macro
X-Macro X-Macro(X 宏)技术核心目的是:维护一份数据(单一数据源),同时生成枚举和字符串之间的映射 讲人话:当有很多很多枚举的时候,我希望能够打印出枚举的字符串,而不是 0,1,2,3… 问题背景 以代码规范检查为例,用下面的枚举表示若干个检查类型: enum RuleId {
作者:CherryYang
发布时间:2026-06-03
分类:
计算机知识
标签:
#
数据结构
gdb 调试
gdb调试 编译参数 编译时 (-L.):你告诉连接器(Linker)去当前目录找库。 运行时 (Runtime):当你运行 ./main 时,操作系统的动态链接器(ld.so)接管了工作。出于安全和规范考虑,Linux 默认不会在当前目录(.)查找动态库,它只去 /lib, /usr/lib 或配
作者:CherryYang
发布时间:2026-06-03
分类:
使用教程
,
计算机知识
标签:
#
gdb
共 5 篇文章
1
页