C++多线程编程实战pdf文字版免费版
编辑点评:掌握C++并发编程技能的必读图书,涵盖大量源代码
将最近非常热门的一种多线程编程与c++技术结合的一本参考书籍,C++多线程编程实战pdf免费版中可以轻松创建各种类型的应用程序、执行并行和优化现有程序,可以从此书中享受更多的受益,提升你的一切能力,构建更好的程序。
C++多线程编程实战pdf图片预览
目录大全
第1章C++概念和特性简介1
1.1介绍1
1.2创建C++项目2
1.3程序结构、执行流和运行时对象3
1.4结构化编程方法7
1.5理解面向对象编程方法9
1.6解释继承、重载和覆盖11
1.7理解多态15
1.8事件处理器和消息传递接口18
1.9链表、队列和栈示例22
第2章进程和线程的概念31
2.1简介31
2.2进程和线程31
2.3解释进程模型32
2.4进程的实现36
2.5进程间通信(IPC)39
2.6解决典型的IPC问题47
2.7线程模型的实现55
2.8线程的用法60
2.9在用户空间实现线程66
2.10在内核实现线程73
第3章管理进程79
3.1介绍79
3.2进程和线程80
3.3协作式和抢占式多任务处理83
3.4解释Windows线程对象84
3.5基本线程管理85
3.6实现异步的线程92
3.7实现同步的线程97
3.8Win32同步对象和技术101
3.8.1同步对象:互斥量102
3.8.2同步对象:信号量103
3.8.3同步对象:事件104
3.8.4同步对象:临界区105
第4章消息传递107
4.1介绍107
4.2解释消息传递接口108
4.3理解消息队列112
4.4使用线程消息队列118
4.5通过管道对象通信122
第5章线程同步和并发操作127
5.1介绍127
5.2伪并行127
5.3理解进程和线程优先级128
5.4Windows分发器对象和调度134
5.5使用互斥量135
5.6使用信号量143
5.7使用事件150
5.8使用临界区157
5.9使用管道164
第6章.NET框架中的线程177
6.1介绍177
6.2托管代码和非托管代码177
6.3如何在.NET中运行线程179
6.4前台线程和后台线程的区别185
6.5理解.NET同步要素188
6.6锁和避免死锁193
6.7线程安全和.NET框架的类型198
6.8事件等待句柄的触发200
6.9基于事件的异步模式204
6.10BackgoundWorker类210
6.11中断、中止和安全取消线程执行214
6.12非阻塞同步222
6.13Wait和Pulse触发224
6.14Barrier类228
第7章理解并发代码设计235
7.1介绍235
7.2如何设计并行应用程序235
7.3理解代码设计中的并行240
7.4转向并行246
7.5改进性能因素252
第8章高级线程管理259
8.1介绍259
8.2使用线程池259
8.3定制线程池分发器269
8.4使用远程线程283
附录 A291
A.1安装MySQL Connector/C291
A.2安装WinDDK-Driver开发套件294
A.3设置驱动器编译的Visual Studio项目296
A.4使用DebugView应用程序301
A.5设置OpenMP编译的Visual Studio项目302
图书特色
多线程编程是当今热门的一种编程技术。结合强大的C++,你可以轻松创建各种类型的应用程序、执行并行和优化现有程序。本书是一本实践为主、通俗易懂的C++ Windows多线程编程指导。你将学会如何从多线程方案中受益,提升自己的开发能力,构建更好的应用程序。本书不仅讲解了创建并行代码时会遇到的问题,而且还帮助读者更好地理解同步技术。本书的目标是帮助读者在理解多线程编程概念的同时,能快速有效地进行并行计算和并发编程。
本书包含以下内容:
使用包含继承、继承和多态的面向对象编程模型;
解决常见的进程间通信问题,避免在开发应用程序中出现死锁和饥饿;
使用CThread类有效地管理线程;
了解.NET CLI/C++特性,及其同步对象和同步技术;
如何在代码设计中使用并行技术;
如何在并发执行中使用机器资源;
通过消息传递协调程序间的工作;
避免典型的同步问题。
亮点介绍
文字简介,易于读者理解。
精挑细选,关注重要的任务和问题。
细心组织,提供高效的问题解决方案。
讲解透彻,清晰解读每个操作步骤。
举一反三,将解决方案应用到其他场景中。
内容简介
《C++多线程编程实战》共8章。第1章介绍了C++编程语言的概念和特性。
第2~5章介绍了进程、线程、同步、并发的相关知识。其中,第2章介绍进程和线程的基本概念,详细介绍了进程和线程对象。第3章讲解线程管理方面的知识,以及进程和线程背后的逻辑,简要介绍了线程同步、同步对象和同步技术。第4章重点介绍了消息传递技术、窗口处理器、消息队列和管道通信。第5章介绍了线程同步和并发操作,讲解了并行、优先级、分发器对象和调度技术,解释了同步对象(如互斥量、信号量、事件和临界区)。第6章介绍.NET框架中的线程,概述了C++/CLI .NET线程对象。简要介绍了托管方法、.NET同步要素、.NET线程安全、基于事件的异步模式和BackgroundWorker对象,以及其他主题。第7~8章为水平较高的读者准备了一些高级知识,概述了并发设计和高级线程管理。其中,第7章讲解理解并发代码设计,涵盖了诸如性能因素、正确性问题、活跃性问题的特性。第8章讲解高级线程管理,重点介绍更高级的线程管理知识。详细介绍了线程池的抽象、定制分发对象,以及死锁的解决方案。附录涵盖了MySQL Connector C和WinDDK的具体安装步骤,介绍了如何为驱动程序编译和OpenMP编译设置Visual Studio。另外,还介绍了DebugView应用程序的安装步骤,并演示了它的使用步骤。
《C++多线程编程实战》主要面向中高级读者,可作为用C++进行Windows多线程编程的参考读物。本书介绍的同步概念非常基础,因此也可作为对这方面技术感兴趣的读者和开发人员的参考书籍。
作者详细介绍
Milo Ljumovi于7月26日出生在欧洲黑山共和国的首都波德戈里察,在那里度过了小学和中学的时光,还到音乐学校学习了吉他。随后在黑山大学自然科学和数学学院进修了计算机科学。他对计算机浓厚兴趣,主修操作系统并获得了硕士学位。2009年12月,Milo?和他的朋友Danijel一起成立了自己的公司,作为一名程序员和高水平的团队一起致力于提供高技术含量的IT解决方案。不久,许多杰出的开发者加入了他们,合作开发了许多应用程序和系统软件、web应用程序和数据库系统。他的客户不仅包括黑山政府,还涉及一些大型的国有企业,开发了一个新的金融系统MeNet以及一些与图片和其他数字媒体类型相关的视频识别软件。除此之外,他还开发了许多网站和其他网络应用程序。客户数量众多,不胜枚举。
Milo?作为国际顾问在美国一家大型的互联网电子商务贸易和数据采集公司工作了几个月。随后于2014年7月创立了一家新公司:EXPERT.ITS.ME。除了开发软件,他还为IT行业的小型企业提供咨询服务,鼓励并帮助他们在处理好企业管理问题的同时,把企业做大做强。另外,Milo?还是黑山国家委员会成员和门萨成员。他热爱编程,擅长C/C++/C#语言,精通HTML、PHP、TSQL等,梦想能开发出自己的操作系统。
在业余时间里,Milo?喜欢打网球、潜水、狩猎和下象棋。喜欢和自己的团队进行头脑风暴,想出一些在IT领域和计算机科学领域新鲜、时尚的好点子。他紧跟IT的发展步伐,不断学习新知识、解决新问题。尤其喜欢教授计算机科学和数学学生,在私有课堂和课程和分享它们给合格的程序员,帮助他们发现科学之美。想更多了解他的兴趣爱好和近况。
作者:资源君
链接:https://www.xuexizoo.com/article/1759808063168069895.html
文章版权归作者所有,未经允许请勿转载。如有侵权,请发邮件联系管理员进行处理,邮箱地址:121671486@qq.com