Rust 并发 & 并行编程
Rust 系列的这几本书可以先从 Concurrent 看, 然后是 system, 然后再 low level lock.
本书包含的主题广泛, 并尝试将每个主题在其单独层面上进行深入. 包含如下:
- 机器架构和 Rust 基础, 讨论现代 CPU架构(X86 和 Arm).
- Rust 性能测试和单元测试, 介绍如何检查 Rust 程序的性能, 以及和硬件相关的细节(缓存,内存布局)是如何对性能产生影响的.
- Rust 内存模型: Ownership, Reference 以及如何操作它们.
- Sync 和 Send: Rust 并发基础
- 锁: 互斥锁, 条件变量, 栅栏, RWLock 等并发编程时候的同步手段.
- 并行基础1: 原子类型.
- 并行基础2: 安全的内存再生, 即如何安全地释放内存(三种主要手段, 即引用计数, hazard 指针以及基于 epoch 系统调用的释放)
- 高级并行: 线程池, 并发迭代器, 进程.
- FFI 和嵌入 Rust 到其它语言.
- 后续需要探索的内容.