绿林网

C++并发编程实战(第2版)读后感精选

C++并发编程实战(第2版)读后感精选

《C++并发编程实战(第2版)》是一本由安东尼·威廉姆斯(Anthony Williams)著作,人民邮电出版社出版的平装图书,本书定价:139.80,页数:393,特精心收集的读后感,希望对大家能有帮助。

《C++并发编程实战(第2版)》读后感(一):c++并发编程实战书评体会

目前读完前三章,翻译水平上乘,书中举例的例子也比较贴切易懂。第三章中从一开始的mutex互斥,随后引入lock_gurad,scope_lock利用RAII简化加锁,解锁的步骤,随后引入unique_lock对前者弱化,缩短上锁的时间和延迟上锁。到后面的shared_mutex结合lock_gurad/unique_lock和shared_lock实现读写锁。层层递进很清晰。此外还提供了多个互斥的加锁方式、recursive_mutex和层级互斥的话题。收获满满。期待第4章中的条件变量和future实现线程同步的内容。 ——2022.04.15

持续更新中

《C++并发编程实战(第2版)》读后感(二):讲C++并发编程的经典之作

本书深入浅出地介绍了C++并发编程的各个方面,不仅涵盖了C++11标准的并发库,还介绍了其他相关的工具和技术。第二版加入了更多Morden C++的特性讲解,实用性较强,值得反复研读。

本书分为15章,其中前8章涵盖了基本的C++并发编程概念和基础知识,如线程,互斥量,条件变量,原子变量,锁等。后7章则介绍了更高级的主题,如多线程设计模式,异步编程,内存模型等。每章都有丰富的代码示例和练习题,有助于读者理解和巩固所学知识。

本书的优点在于,它提供了大量的代码示例和练习题,帮助读者深入理解C++并发编程的各个方面。书中的例子清晰明了,易于理解和模仿。此外,本书还介绍了许多实用的技术和工具,如同步队列,异步任务,协程,线程池等,这些知识对于实际编程中的并发问题解决非常有帮助。

本书的缺点在于,由于本书的目标读者是有一定编程基础的C++程序员,因此一些概念和术语可能会对初学者有些晦涩难懂。此外,由于本书介绍了很多概念和技术,因此需要读者有一定的耐心和时间来逐步消化和理解。

总的来说,它是一个很好的参考书,适合C++程序员学习和理解并发编程的各个方面。如果你想深入了解C++并发编程,本书是一个非常好的选择。

《C++并发编程实战(第2版)》读后感(三):“实战”二字是名副其实,全书围绕真实的编程场景深入浅出。

异步君来推荐这本 C++标准专家组的成员安东尼·威廉姆斯的著作《C++并发编程实战(第2版)》,希望你能通过这本C++并发编程技能的必读图书成为高级C++开发人员。

1、读这本书的四大理由

▌理由一:这本书是完美的工程实践风格,有完整的C++例子

《C++并发编程实战(第2版)》可以作为C++在编写优雅多线程应用方面的权威指南。并更新了C++17的相关内容,其详细描述了并行开发的各个方面,从启动新线程到设计复杂的多线程算法和数据结构。在每一章中,并发大师安东尼·威廉姆斯都为你提供了示例和一些练习,也包括一些独到的见解,这对于开发经验丰富人员来说可能是非常有兴趣的。

主要提供了以下让C++程序员特别感兴趣的内容:

所举的例子简洁而有代表性,比如:

●基于锁的并发数据结构的设计(Designing lock-based concurrent data structure)

●无锁并发数据结构的设计(Designing lock-free concurrent data structure)

●并发代码的设计(Designing concurrent code)

●高级线程管理(Advanced thread management)

●并行算法(Parallel algorithm):

●多线程应用的测试与调试(Testing and debugging multithreaded application)

这本书涉及的技术、函数和类适用于各种环境:

无论负责运行的计算机是配备了单核单处理器,还是多核多处理器;无论其并发功能如何实现,是凭借任务切换,还是真正的硬件并发,一概不影响使用。这才是真正的实战啊!

这些例子中的一些代码甚至可以直接照搬到生产环境下使用,相信仔细阅读并实战完之后的你,能收获作者对多线程程序设计的一些很有价值的经验,能对于底层有更深入的认知。

▌理由二:C++并发编程领域大师多年心血,其独特见解引人深思

安东尼·威廉姆斯(Anthony Williams)

安东尼·威廉姆斯(Anthony Williams)来自英国,他是开发者、顾问、培训师,积累了超过 20 年的 C++开发经验。安东尼·威廉姆斯离开大学后的第一份工作就是与多线程的概念和代码打交道。而正是这份工作,让他对多线程和并发产生了浓厚的兴趣。从 2001 年起,他成为英国标准协会 C++标准专家组的成员,独立编写或参与编写了许多 C++标准委员会的文件,使 C++11 标准引入了线程库。等到多线程被明确提上议程,他便全力以赴,独自起草并参与编写了许多与多线程和并发相关的提案,这些提案塑造了 C++标准的一部分。他持续参与了 C++标准委员会并发小组的工作,包括对 C++17 标准进行改进,制定并发技术规约(Concurrency Technical Specification),以及编写关于 C++未来演化发展的提案等。

现在,他继续致力于开发 C++的新特性,以增强 C++并发工具集的功能,这两者都遵循 C++标准和提案。他还扩展了 C++线程库,实现了工具“just::thread Pro”(Just Software Solutions 公司的产品)。此外,安东尼·威廉姆斯还是大名鼎鼎的Boost C++程序库的作者,呼应系列名《In Action》。他最开始因为兴趣,跟进了 Boost 线程库的初期开发。

当原本的开发者中止了相关工作时,他抓住机会,立即接手——Boost 线程库第 1 版的作者是 William E. Kempf,第 2 版的作者就是他。从 2007 年到 2011 年,他担任了 Boost 线程库的主力开发者和维护者。安东尼·威廉姆斯曾说“关于计算机,我的兴趣主要有两个——C++和多线程”,这你可以从他全是C++内容的Github主页上看出。

安东尼·威廉姆斯Github主页

《C++并发编程实战(第2版)》正是他多年心血的凝聚。这本书基于他研习 C++和多线程的全部经验,旨在指导其他 C++开发者安全且高效地使用 C++线程库和并发技术规约。他也希望将自己对这个主题的兴趣和热忱融入本书,并传递给读者。

▌理由三:紧跟 C++标准不断更新的脚步,全新升级推出第2版

2012 年出版的《C++并发编程实战(第1版)》帮助了很多想要学习和了解C++并发编程的读者,不少读者称其为“C++并发编程的权威指南”。

《C++并发编程实战(第1版)》是基于C++11新标准的并发和多线程编程深度指南。内容包括从std::thread、std::mutex、std::future和std::async等基础类的使用,到内存模型和原子操作、基于锁和锁数据结构的构建,再扩展到并行算法、线程管理,最后还介绍了多线程代码的测试工作。由于在C++11标准发布之后,以 C++11 为基础,委员会相继发布了 C++14 标准、C++17 标准和一些技术规约,进一步为编写多线程程序提供支持。在这些技术规约中,其中一份针对并发特性的扩展,而针对并行特性的扩展另有一份,后者已被正式纳入C++17 标准。

《C++并发编程实战(第2版)》在延续第 1 版的风格和特色的同时,又增添了许多精彩之处:

2、这本书应该如何学?

▌目标读者

这本书适合于需要深入了解C++多线程开发的读者,以及使用C++进行各类软件开发的开发人员、测试人员。对于使用第三方线程库的读者,也可以从本书后面的章节中了解到相关的指引和技巧。同时,本书还可以作为C++线程库的参考工具书。

▌结构安排

如果你以前没有编写过多线程代码,作者建议按顺序从头到尾阅读本书。

如果你之前没使用过 C++11 的新功能,那就需要先浏览一下附录 A,再开始阅读正文,这将有助于透彻理解本书的代码示例。正文中已经标注出用到 C++新特性的地方,尽管如此,一旦你遇到任何从未见过的内容,也可以随时翻查附录。

如果你已经编写过多线程代码,并且经验丰富,前几章会让你知晓已经熟知的工具与新标准的 C++工具是怎样对应的。

如果你要进行任何底层工作,涉及原子变量,则第 5 章必不可少。

为了确保你真正熟知 C++多线程编程的各种细节,例如异常安全(exception safety),那么,第 8 章值得你好好学习。

如果你肩负某种特定的编码任务,索引和目录会帮你迅速定位到有关章节。

即便你已经掌握了 C++线程库的使用方法,附录 D(可从异步社区下载)依然有用,例如可供你查阅各个类和函数调用的精准细节。你也可以考虑时不时地回顾一下主要章节,或强化记忆某个特定的模型,或重温示例代码。

《C++并发编程实战(第2版)》目录

本文由作者上传并发布(或网友转载),绿林网仅提供信息发布平台。文章仅代表作者个人观点,未经作者许可,不可转载。
点击查看全文
相关推荐
热门推荐