C++ 并发编程:多线程编程实用指南
300 页
Chinese
PDF
4.5

C++ 并发编程:多线程编程实用指南

C++ 并发编程:多线程编程实用指南

作者:

年份:

简介:

《C++ 并发编程:多线程编程实用指南》是一本全面的教程,面向希望掌握使用 C++ 语言编写多线程和异步应用程序的现代方法的开发者。作者阿列克谢·伊万诺夫是一位经验丰富的系统工程师和教师,他从基础开始,逐步揭示并发编程的所有关键方面,直至复杂的同步模式。



本书内容简介

本书涵盖了在 C++ 中有效处理并发所需的全部主题:

  • 多线程基础:使用 std::thread 创建和管理线程、传递参数、处理线程中的异常。
  • 数据同步:互斥锁(std::mutex、std::shared_mutex)、锁(std::lock_guard、std::unique_lock)、条件变量(std::condition_variable)。
  • 原子操作:std::atomic、C++ 内存模型(memory ordering)、无锁编程及防止数据竞争。
  • 异步任务:std::async、std::future、std::promise、std::packaged_task——无需显式管理线程即可编写异步代码。
  • 并行算法:使用 std::execution::par 并行化标准算法(C++17)。
  • 设计模式:线程池、生产者-消费者、读写锁、屏障和闩锁(C++20 中的 std::barrier、std::latch)。
  • 调试与性能分析:用于查找多线程代码中死锁、数据竞争和瓶颈的工具。


本书适合谁阅读?

本书面向中级和高级 C++ 开发者,他们已熟悉语言基础(指针、模板、STL),并希望深入学习并发主题。本书适用于:

  • 高负载服务器和网络应用程序的程序员。
  • 对性能要求苛刻的游戏和图形引擎开发者。
  • 从事实时系统或嵌入式系统工作的工程师。
  • 所有希望编写安全且高效的多线程 C++ 代码的人。


读者将学到什么?

阅读本书后,您将能够:

  • 熟练使用 C++ 标准线程库(std::thread、互斥锁、futures)。
  • 理解 C++ 内存模型并正确选择原子操作顺序。
  • 避免常见错误:死锁、活锁、数据竞争。
  • 使用现代模式设计可扩展的并发系统。
  • 应用并行算法加速计算。
  • <

推荐