


作者:[印]沙克蒂·坦沃 著 马琳琳 译
定价:99元
印次:1-1
ISBN:9787302581826
出版日期:2021.07.01
印刷日期:2021.07.07
图书责编:贾小红
图书分类:零售
《并行编程实战:基于C# 8和.NET Core 3》详细阐述了与并行编程相关的基本解决方案,主要包括并行编程简介、任务并行性、实现数据并行、使用PLINQ、同步原语、使用并发集合、通过延迟初始化提高性能、异步编程详解、基于任务的异步编程基础、使用Visual Studio调试任务、编写并行和异步代码的单元测试用例、ASP.NET Core中的IIS和Kestrel、并行编程中的模式、分布式存储管理等内容。此外,本书还提供了相应的示例、代码,以帮助读者进一步理解相关方案的实现过程。 《并行编程实战: 基于C# 8和.NET Core 3》适合作为高等院校计算机及相关专业的教材和教学参考书,也可作为相关开发人员的自学读物和参考手册。
沙克蒂·坦沃是Techpro Compsoft Pvt Ltd(一家全球信息技术咨询提供商)的首席执行官。他是一名技术推广人员和软件架构师,在软件开发和企业培训方面拥有超过15年的经验。Shakti是一名Microsoft认证培训师,并且一直与Microsoft合作在中东地区开展培训。他的专业领域包括.NET、Azure机器学习、人工智能、纯函数式编程的应用和并行计算等。
前 言 Packt出版社大约一年前首次与我联系,约稿撰写本书。经过一段漫长的写作过程,本书的编写终于完成,虽然比我预期的要难,但是在此过程中我也学习到了很多知识。你现在看到的图书是我经过许多漫长日子、辛勤工作的结晶,我很自豪最终能将它呈现在你的面前。 编写一本有关C#的图书对我来说意义重大,因为在我的职业生涯中,C#是我使用最为娴熟的语言,撰写一本和它有关的图书是我一直以来的梦想。自从C#面世以来,它确实有了长足的发展,而.NET Core的出现也增强了C#在开发人员社区中的声誉。 为了使本书对广大读者更有意义,我们将同时讨论经典的线程模型和任务并行库(TPL),并通过代码进行更详细的解释。我们将首先研究操作系统和多线程代码编写方面的基本概念,然后仔细探讨经典线程和TPL之间的区别。 本书的编写方式力求易于学习,并注意在当前最佳编程实践的背景下进行并行编程。本书示例简短明了,即使你没有太多的先验知识也很容易理解。 希望你能喜欢阅读本书,就像我喜欢撰写本书一样。 本书读者 本书适用于希望学习多线程和并行编程概念,并想在使用.NET Core构建的企业应用程序中使用它们的C#程序员。如果你是学生或专业人士,想理解并行编程与现代硬件的结合方式,那么本书也很适合你。 本书假定你已经熟悉C#编程语言和操作系统相关基础知识。 内容介绍 本书共包括5篇14章,具体内容如下。 ? 第1篇:线程、多任务和异步基础,包括第1~4章。 ? 第1章“并行编程简介”,阐释多线程和并行编程的重要概念。本章还介绍操作系统的发展以及现代并行编程结构。 ? 第2章“任务并行性”,...
第1篇 线程、多任务和异步基础
第1章 并行编程简介 3
1.1 技术要求 3
1.2 为多核计算做准备 4
1.2.1 进程 4
1.2.2 硬件和应用程序的性能 4
1.2.3 多任务 4
1.2.4 超线程 5
1.2.5 Flynn分类法 6
1.2.6 线程 7
1.2.7 线程类型 7
1.2.8 线程单元状态 7
1.2.9 多线程 10
1.2.10 Thread类 12
1.2.11 使用Thread类的优缺点 16
1.2.12 ThreadPool类 17
1.2.13 使用ThreadPool的优缺点 19
1.2.14 BackgroundWorker 20
1.2.15 使用BackgroundWorker的优缺点 23
1.2.16 多线程与多任务对比 24
1.3 适用并行编程技术的场景 24
1.4 并行编程的优缺点 25
1.5 小结 26
1.6 牛刀小试 26
第2章 任务并行性 29
2.1 技术要求 29
2.2 任务 29
2.3 创建和启动任务 30
2.3.1 System.Threading.Tasks.Task类 31
2.3.2 System.Threading.Tasks.Task.Factory.StartNew方法 32
2.3.3 System.Threading.Tasks.Task.Run方法 33
2.3.4 System.Threading.Tasks.Task.De... 查看详情
本书还介绍了数据并行性、PLINQ支持、支持.NET Core中并行性的数据结构、同步原语、.NET Core中可用的并发集合、延迟初始化等概念,讨论了适合使用异步编程的情形和不宜使用异步编程的情形,以及如何利用.NET Core中的新结构(async和await关键字)来实现异步代码。

