C++多线程编程实战
全新正版 极速发货
¥
43.13
6.2折
¥
69.8
全新
库存9件
作者(黑)留莫维奇
出版社人民邮电出版社
ISBN9787115413666
出版时间2016-05
装帧平装
开本16开
定价69.8元
货号1202857331
上书时间2024-11-21
商品详情
- 品相描述:全新
- 商品描述
-
作者简介
Milos Ljumovic于7月26日出生在欧洲黑山共和国的首都波德戈里察,在那里度过了小学和中学的时光,还到音乐学校学习了吉他。随后在黑山大学自然科学和数学学院进修了计算机科学。他对计算机浓厚兴趣,主修操作系统并获得了硕士学位。2009年12月,Milos和他的朋友Danijel一起成立了自己的公司,作为一名程序员和高水平的团队一起致力于提供高技术含量的IT解决方案。不久,许多杰出的开发 者加入了他们,合作开发了许多应用程序和系统软件、web应用程序和数据库系统。他的客户不仅包括黑山政府,还涉及一些大型的国有企业,开发了一个新的金融系统MeNet以及一些与图片和其他数字媒体类型相关的视频识别软件。除此之外,他还开发了许多网站和其他网络应用程序。客户数量众多,不胜枚举。
Milos作为国际顾问在美国一家大型的互联网电子商务贸易和数据采集公司工作了几个月。随后于2014年7月创立了一家新公司:EXPERT.ITS.ME。除了开发软件,他还为IT行业的小型企业提供咨询服务,鼓励并帮助他们在处理好企业管理问题的同时,把企业做大做强。另外,Milos还是黑山国家委员会成员和门萨成员。他热爱编程,擅长C/C++/C#语言,精通HTML、PHP、TSQL等,梦想能开发出自己的操作系统。
在业余时间里,Milos喜欢打网球、潜水、狩猎和下象棋。喜欢和自己的团队进行头脑风暴,想出一些在IT领域和计算机科学领域新鲜、时尚的好点子。他紧跟IT的发展步伐,不断学习新知识、解决新问题。尤其喜欢教授计算机科学和数学学生,在私有课堂和课程和分享它们给合格的程序员,帮助他们发现科学之美。
目录
第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.8 Win32同步对象和技术 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.4 Windows分发器对象和调度 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.10 BackgoundWorker类 210
6.11 中断、中止和安全取消线程执行 214
6.12 非阻塞同步 222
6.13 Wait和Pulse触发 224
6.14 Barrier类 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
附 录 A 291
A.1 安装MySQL Connector/C 291
A.2 安装WinDDK-Driver开发套件 294
A.3 设置驱动器编译的Visual Studio项目 296
A.4 使用DebugView应用程序 301
A.5 设置OpenMP编译的Visual Studio项目 302
内容摘要
多线程编程是当今热门的一种编程技术。结合强大的C++,你可以轻松创建各种类型的应用程序、执行并行和优化现有程序。本书是一本实践为主、通俗易懂的C++ Windows多线程编程指导。你将学会如何从多线程方案中受益,提升自己的开发能力,构建更好的应用程序。本书不仅讲解了创建并行代码时会遇到的问题,而且还帮助读者更好地理解同步技术。本书的目标是帮助读者在理解多线程编程概念的同时,能快速有效地进行并行计算和并发编程。
《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多线程编程的参考读物。本书介绍的同步概念非常基础,因此也可作为对这方面技术感兴趣的读者和开发人员的参考书籍。
主编推荐
1.实战为主:《C++多线程编程实战》以实际应用为导向,详解Windows下多线程编程技术,为读者提供丰富的实例演示和问题解决方案,帮助开发人员快速掌握并行计算和并发编程。
2.深入浅出:作者Milos Ljumovic从基本概念到高级知识,结合详细的操作步骤和清晰的图表,讲解了C++多线程编程中的难点和疑惑,使得读者能够轻松理解和运用。
3.组织精细:全书共包含8章,覆盖了C++编程语言的概念与特性、进程、线程、同步与并发等多个方面。每一章都经过仔细组织和排版,让读者更好地掌握和理解各类知识点。
4.聚焦实用性:对多线程编程中常见的问题进行详解,如死锁问题、同步互斥问题等,并提供了相应的解决方法。这些问题解决方案可以帮助开发人员在实际编程中快速定位问题并解决。
5.适合多级读者:《C++多线程编程实战》适合从初学者到专家的各种不同层次的读者,内容涵盖了基础概念和高级技术,并提供了丰富的示例,使得对于多线程编程感兴趣的人员都能够受益。
— 没有更多了 —
以下为对购买帮助不大的评价