Rust中的并发:异步、线程与并行
300 页
Chinese
PDF
4.5

Rust中的并发:异步、线程与并行

Rust中的并发:异步、线程与并行

作者:

年份:

简介:

《Rust中的并发》是一本全面指南,专注于Rust生态中最强大且最复杂的主题之一。Rust以其在编译阶段防止数据竞争和其他多线程错误的能力而闻名,但要充分利用这些能力,需要深入理解并发的概念。



本书将带您从基础到高级技术。您将从理论开始:什么是并发和并行,它们的区别是什么,以及为什么Rust比其他任何语言都更适合它们。然后,您将进入基于最新Rust版本(2024)编写的实用示例。



  • 多线程基础:创建和管理线程,在线程间传递所有权,使用std::thread。
  • 安全数据共享:互斥锁(Mutex),读写锁(RwLock),原子操作和引用计数器Arc。
  • 通道与消息传递:使用std::sync::mpsc和crossbeam crate的CSP模型。
  • 异步编程:深入探讨async/await、任务、Future、select!以及流行的运行时(tokio、async-std)。
  • 高级模式:线程池、并行迭代器(rayon)、无锁数据结构和Actor模型。
  • 性能分析与调试:用于查找瓶颈的工具、数据竞争检测器(ThreadSanitizer)以及为并发代码编写测试。


本书适合谁?

  • 希望从顺序代码转向多线程代码的Rust开发者。
  • 熟悉其他语言(C++、Go、Java)并希望了解Rust如何解决并发问题的程序员。
  • 从事高负载系统、Web服务器、网络应用或游戏开发的工程师。


您将学到什么:

  • 如何避免死锁、活锁和数据竞争。
  • 何时使用线程,何时使用异步。
  • 如何正确设计并发应用的架构。
  • 如何编写能在多核处理器上扩展的代码。


所有代码示例均可在仓库中找到,并附有详细注释。本书既适合已掌握Rust基础的新手,也适合希望系统化知识的有经验开发者。



深入Rust并发编程的世界,学习创建快速、可靠且安全的应用程序!

推荐