/Cplusplus-Concurrency-In-Practice

A Detailed Cplusplus Concurrency Tutorial 《C++ 并发编程指南》

Primary LanguageGCC Machine DescriptionMIT LicenseMIT

写作动机

本书《C++ 并发编程指南》是个人在空余时间写的,由于时间仓促,加上自身水平有限,不可能写的很完善,也难免出现错误,如果你发现本书中的错误,或者有更好的想法,欢迎给我反馈,我会第一时间给予答复。后续我会坚持完善这一系列的文章。也希望感兴趣的同学和我一起完成。

本书的创作出于以下两个目的:

  • 传播知识,介绍 C++ 并发编程。目前国内还没有一本完整介绍 C++11 并发编程的中文书籍,希望本书可以帮助广大的 C++ 开发者学习并发编程,降低 C++ 并发编程的学习难度,减少初学者对 C++ 并发编程的恐惧感。
  • 自我激励和提高。创作本书的另一个目的是自我激励和提高。和大部分人一样,本人也是 C++ 菜鸟一枚,在创作本书的过程中我会查阅大量资料,时间长了,自己学到的东西就慢慢积累多了。同时,在写作的时候为了表达清楚和准确,个别语句我会不断推敲,对自己的思维和语言表达能力很有帮助的。最后我坚信: 菜鸟都一样(因为什么都不会),牛人各有各的不同。

本书还处于创作早期(2013 年 8 月 31 日提交第一行内容),还有很多内容需要修正和完善,如果你对此感兴趣,希望能加入到我们的队伍中(虽然目前还只有我一人孤身奋战)一起来完成 《C++ 并发编程指南》,传播知识,方便他人,提高自我吧。

本书目录(只列出一级目录)

第一章 并发编程基础

第二章 几种常见的多线程库介绍

第三章 线程详解

第四章 互斥量与锁

第五章 条件变量与线程同步

第六章 异步任务详解

第七章 原子类型详解

第八章 C++11 内存模型

第九章 高级线程管理

第十章 如何编写正确的并发数据结构

第十一章 并发编程应用实例

附录 C++11 新标准概览

本书的详细目录和完成情况请移步《C++ 并发编程指南》目录

本书创作发起人

forhappy(haipingf AT gmail DOT com)

微博: @傅海平ICT(www.weibo.com/1702076100)

贡献者名单

欢迎申请加入该名单 ;-)

License

The MIT License (MIT)

Copyright (c) 2013 傅海平

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.