欢迎访问 内存溢出 —— 独立后端与系统工程技术博客

专注于分布式系统、Linux内核、数据库存储与后端工程实践

分类:系统编程

共 15 篇文章

系统编程相关技术文章

Rust 没有异常机制,错误通过 Result<T, E 类型显式传播,编译器强制调用方处理可能的失败。 一、? 运算符与错误转换 ? 在错误时提前返回,并通过 From trait 自动转换错误类型。 二、库与应用的分层策略 库(Library):使用 thiserror 定义具体错误枚举,便于调用方精确匹配 应用(

分类:系统编程|标签:Rust / 错误处理 / 工程实践|阅读(2276)

std::sharedptr 通过引用计数管理堆对象生命周期,其实现依赖堆上的控制块(Control Block)。 一、控制块结构 控制块通常包含: 强引用计数(sharedcount) 弱引用计数(weakcount) 删除器(Deleter)与分配器 使用 std::makeshared 可将对象与控制块一次性分

分类:系统编程|标签:CPP / 内存管理 / 智能指针|阅读(2103)

C++11 引入的 std::atomic 与内存序模型,为无锁编程提供了标准化的语言级支持。 一、六种内存序 memoryorderrelaxed:仅保证原子性,无顺序约束 memoryorderconsume:依赖顺序(实践中较少使用) memoryorderacquire:读操作,后续读写不能重排到其前 memo

分类:系统编程|标签:并发编程 / CPP / 原子操作|阅读(3052)

Rust 生命周期系统在复杂泛型场景下需要更高级的工具,高阶 trait 约束(HRTB)与 PhantomData 是其中两个重要机制。 一、高阶 trait 约束(HRTB) for<'a 表示对任意生命周期都成立,常用于闭包与 trait 对象场景,避免生命周期被过早固定。 二、PhantomData 的用途 P

分类:系统编程|标签:Rust / 类型系统 / 生命周期|阅读(3608)