Book description
The Rust programming language is extremely well suited for concurrency, and its ecosystem has many libraries that include lots of concurrent data structures, locks, and more. But implementing those structures correctly can be very difficult. Even in the most well-used libraries, memory ordering bugs are not uncommon.
In this practical book, Mara Bos, leader of the Rust library team, helps Rust programmers of all levels gain a clear understanding of low-level concurrency. You'll learn everything about atomics and memory ordering and how they're combined with basic operating system APIs to build common primitives like mutexes and condition variables. Once you're done, you'll have a firm grasp of how Rust's memory model, the processor, and the role of the operating system all fit together.
With this guide, you'll learn:
- How Rust's type system works exceptionally well for programming concurrency correctly
- All about mutexes, condition variables, atomics, and memory ordering
- What happens in practice with atomic operations on Intel and ARM processors
- How locks are implemented with support from the operating system
- How to write correct code that includes concurrency, atomics, and locks
- How to build your own locking and synchronization primitives correctly
Publisher resources
Table of contents
- Foreword
- Preface
- 1. Basics of Rust Concurrency
- 2. Atomics
- 3. Memory Ordering
- 4. Building Our Own Spin Lock
- 5. Building Our Own Channels
- 6. Building Our Own “Arc”
- 7. Understanding the Processor
- 8. Operating System Primitives
- 9. Building Our Own Locks
- 10. Ideas and Inspiration
- Index
- About the Author
Product information
- Title: Rust Atomics and Locks
- Author(s):
- Release date: January 2023
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 9781098119447
You might also like
book
Command-Line Rust
Updated in 2024: A new version has been released that simplifies the programs used in the …
book
Rust for Rustaceans
For developers who’ve mastered the basics, this book is the next step on your way to …
book
Rust in Action
Rust in Action introduces the Rust programming language by exploring numerous systems programming concepts and techniques. …
book
Programming Rust
Rust is a new systems programming language that combines the performance and low-level control of C …