作者: | Mara Bos |
语言: | 英文 |
出版年份: | 2023 |
编程语言: | Rust |
下载链接: |
书籍均收集自互联网,仅供学习和研究使用,请莫用于商业用途。谢谢合作。 |
《Rust Atomics and Locks》是一本专注于 Rust 语言低级并发编程的书籍,由资深 Rust 开发者 Mara Bos 撰写。本书旨在帮助 Rust 开发者深入理解并发编程中的原子操作和锁机制,同时为其他语言的并发开发者提供 Rust 并发机制的参考。
Mara Bos 是 Rust 标准库的维护者之一,也是实时控制系统开发的专家。她在 Rust 社区拥有丰富的经验,曾参与多个重要的 Rust 项目,对 Rust 的并发模型和内存安全机制有深入的理解。
本书共分为十章,内容涵盖了 Rust 并发编程的基础知识、原子操作、内存排序、锁的实现等多个方面。
介绍了 Rust 中线程的基本概念、线程安全、共享所有权和引用计数等内容。通过具体的代码示例,展示了如何在 Rust 中创建和管理线程,并解释了线程安全的重要性。
详细介绍了 Rust 中的原子类型及其操作,包括简单的加载和存储操作,以及更高级的比较交换循环。通过实际案例,展示了原子操作在并发编程中的应用。
深入探讨了内存排序的概念,包括发生前关系、不同内存排序的含义以及为什么顺序一致排序并非万能。通过具体的代码示例,帮助读者理解内存排序在并发编程中的重要性。
通过实现一个简单的自旋锁,展示了如何将理论应用于实践。介绍了如何使用 Rust 的类型系统来构建安全且易于使用的并发原语。
从零开始实现了一种单次通道,探讨了设计安全接口的方法以及设计决策及其后果。
挑战性地从零实现原子引用计数,最终版本几乎与 Rust 标准库中的 std::sync::Arc 类型完全相同。
深入探讨了处理器层面的细节,包括汇编指令、缓存机制以及内存模型在硬件层面的体现。
介绍了 Linux、macOS 和 Windows 提供的并发原语,包括 pthreads、futex 等,并探讨了如何在 Rust 中使用这些原语。
使用前几章的知识,从零实现互斥锁、条件变量和读写锁,并尝试通过简单的基准测试来优化这些锁的性能。
为读者提供了一些并发编程的想法和灵感,鼓励读者将所学知识应用于实际项目中,探索低级并发编程的更多可能性。
本书主要面向希望深入了解 Rust 低级并发的 Rust 开发者,同时也适合对 Rust 并发机制感兴趣的其他语言开发者。假设读者已经掌握了 Rust 的基础知识,并具备一定的并发编程经验。
《Rust Atomics and Locks》是一本全面且深入的 Rust 并发编程书籍。通过丰富的代码示例和详细的理论讲解,本书帮助读者从基础到高级逐步掌握 Rust 的并发机制。无论是 Rust 开发者还是其他语言的开发者,都能从本书中获得宝贵的并发编程知识和实践指导。