引言
Rust 的一大承诺是无畏的并发:让编写安全、并发的程序变得更加容易。到目前为止,我们对此还没有太多了解。迄今为止所做的所有工作都是单线程的。现在是时候做出改变了!
在本章中,我们将使我们的票务系统支持多线程。我们将有机会接触到 Rust 核心并发特性中的大部分内容,包括:
- 使用
std::thread
模块的线程 - 使用通道进行消息传递
- 使用
Arc
、Mutex
和RwLock
管理共享状态 Send
和Sync
特性,它们编码了 Rust 的并发保证
我们还将讨论多线程系统的一些设计模式及其权衡。