Opening book details…
Can I read C++并发编程实战 on EtoBox?
C++并发编程实战 by 威廉姆斯(Anthony Williams) is a book available to read on EtoBox.
What is C++并发编程实战 about?
本书是一本基于C++11新标准的并发和多线程编程深度指南。内容包括std::thread、std::mutex、std::future和std::async等基础类的使用,内存模型和原子操作、基于锁和无锁数据结构的构建,以及并行算法和线程管理,最后还介绍了多线程代码的测试。本书的附录部分还对C++11新语言特性中与多线程相关的项目进行了简要的介绍,并提供了C++11线程库的完整参考。 本书适合于需要深入了解C++多线程开发的读者,以及使用C++进行各类软件开发的开发人员、测试人员阅读。使用第三方线程库的读者,也可以从本书后面的章节中了解到相关的指引和技巧。同时,本书还可以作为C++11线程库的参考工具书。 版权信息 9 版权声明 10 内容提要 11 序 12 译者简介 14 致谢 16 前言 17 路线图 17 谁应该阅读本书 17 如何使用本书 18 代码约定和下载 18 软件需求 19 作者在线 19 资源 21 印刷资源 21 在线资源 21 简要目录 24 第1章 你好,C++并发世界 25 1.1 什么是并发 25 1.1.1 计算机系统中的并发 26 1.1.2 并发的途径 28 1.2 为什么使用并发 32 1.2.1 为了划分关注点而使用并发 32 1.2.2 为了性能而使用并发 33 1.2.3 什么时候不使用并发 34 1.3 在C++中使用并发和多线程 36 1.3.1 C++多线程历程 36 1.3.2 新标准中的并发支持 37 1.3.3 C++线程库的效率 37 1.3.4 平台相关的工具 38 1.4 开始入门 39 你好,并发世界 39 1.5 小结 41 第2章 管理线程 42 2.1 基本线程管理 42 2.1.1 启动线程 42 2.1.2 等待线程完成 46 2.1.3 在异常环境下的等待 46 2.1.4 在后台运行线程 49 2.2 传递参数给线程函数 51 2.3 转移线程的所有权 54 2.4 在运行时选择线程数量 58 2.5 标识线程 62 2.6 小结 64 第3章 在线程间共享数据 65 3.1 线程之间共享数据的问题 65 3.1.1 竞争条件 68 3.1.2 避免有问题的竞争条件 69 3.2 用互斥元保护共享数据 69 3.2.1 使用C++中的互斥元 70 3.2.2 为保护共享数据精心组织代码 72 3.2.3 发现接口中固有的竞争条件 74 3.2.4 死锁:问题和解决方案 82 3.2.5 避免死锁的进一步指南 85 3.2.6 用std::unique_lock灵活锁定 92 3.2.7 在作用域之间转移锁的所有权 94 3.2.8 锁定在恰当的粒度 95 3.3 用于共享数据保护的替代工具 98 3.3.1 在初始化时保护共享数据 98 3.3.2 保护很少更新的数据结构 103
- Author
- 威廉姆斯(Anthony Williams)
- Publisher
- 人民邮电出版社
- Language
- ZH
More by 威廉姆斯(Anthony Williams)
Browse all works by 威廉姆斯(Anthony Williams)