Rust 原理丨从汇编角度看原子操作

本篇文章沿着 “CPU → 汇编指令 → Rust 原子语义” 的链路,带你拆解 Atomic* 背后到底发生了什么。我们先用 x86-64 与 ARM64 的真实编译结果对比 Ordering 的生成代码,再结合缓存一致性协议与编译器重排规则,解释为什么同一行 Rust 代码在不同平台会呈现截然不同的机器级行为。读完后,你不必死记硬背五种内存顺序,也能判断何时选 Relaxed、何时必须上 SeqCst,并掌握一套“看 asm → 辨语义 → 做权衡”的分析方法,为写锁、并发容器或性能调优提供根底。

rust

Rust 实战丨手写一个 Arc

本文手把手带你拆解并重构 Arc:从单线程引用计数,到跨线程 Weak 防环,再到剥离强/弱引用与内存序优化,层层深入 Rust 并发与内存模型核心。

rust

Rust 实战丨手写一个 oneshot channel

本文从零开始,通过多版本迭代,实现一个安全的 Rust oneshot channel。我们将深入 `AtomicBool`、`UnsafeCell`、`MaybeUninit` 的使用,通过 `Drop` 管理内存,并最终以 `Sender`/`Receiver` 模式和所有权机制封装 `unsafe`,构建健壮的并发原语。

rust

Rust 实战丨手写一个 SpinLock

本文以三段迭代示例演示如何在 Rust 中手写自旋锁:从最小化原子标志实现,到绑定受保护数据,再到借助 RAII 实现自动解锁。过程中深入讲解 Atomic 内存顺序、UnsafeCell 内部可变性、Send/Sync 并发标记,以及 Drop/Deref 零成本抽象,帮助读者理解自旋锁适用场景与潜在陷阱,并掌握将并发安全问题前移到编译期的工程思维。

rust

RAG 技术概览

本文是在笔者学习了极客时间《RAG 快速开发实战》课程后,对 RAG 相关技术进行一个梳理归纳,帮助开发者在 RAG 开发中进行快速定位、系统学习。

ai

读书笔记丨《Unit Testing Principles, Practices, and Patterns》

本文总结了读者在阅读《Unit Testing》书籍中的收获和思考。

读书笔记

读书笔记丨《Unit Testing Principles, Practices, and Patterns》

本文对《Unit Testing》的关键观点进行了梳理总结。

读书笔记

一步步推导出 MySQL 数据的底层存储结构

本文从最简单的数据格式开始,通过不断解决一个个关键问题,最终推导出 MySQL 数据的底层存储结构,即 B+ 树。

数据库

在 Hexo 博客中优雅地集成 Markmap 思维导图

本文详细介绍了如何在 Hexo 博客中优雅地集成 Markmap 思维导图,让你能够直接在 Markdown 文件中创建交互式思维导图。同时这也是一个 Hexo 插件的标准实现案例。

小技术

为什么 OpenTelemetry 的 SDK 中不支持尾采样 Hook?

本文介绍了 OpenTelemetry 的采样机制,特别是为什么它在 SDK 层面不支持尾采样。

服务监控
1235