您现在的位置是:首页 >技术教程 >【C#】并行编程实战:序章网站首页技术教程
【C#】并行编程实战:序章
前言
本文主要是基于这本书学习的:
《并行编程实战:基于C#8和.NET Core 3》,我当时买的实体书,长下面这个样子。我买了大概浏览了一下,感觉内容还行(基本都是没见过的新东西),所以打算认真学一下。
配套的学习(原书)工程地址如下:
当然,作为一个Unity程序员,肯定是会尝试放到Unity里实践的。众所周知,Unity里其实是不建议多线程编程的,UnityEngine命名空间下的类都是只能在主线程调用的。然而,既然是C#运行程序,那就是可以执行多线程编程的。至于有什么好处,这个就不用赘述了,大家都知道。
原书的工程配置是 VS 2019,一般对应的Unity工程是 2018版本。但是我肯定不会用这么老的版本,我使用的版本如下:
Unity 2022.2.5 f1c1
Visual Studio 2022.17.5.0
.Net版本: .NET Standard 2.1 / v4.0.30319
C#版本:9.0
配置上来讲都是比较新的设定,理论上是可以完全兼容书上的版本,当然也可能会有很多坑会踩,这个就一边学习一边研究了。在后面学习的过程中,我把Unity升级到2022.2.20f1,也没有什么问题。我自己学习用的Unity工程地址如下:
章节目录
总共章节如下:
1. 线程、多任务和异步基础
- 并行编程简介
- 任务并行性
- 实现数据并行
- 使用 PLINQ
2. 支持.NET Core 中并行性的数据结构
- 同步原语
- 使用并发集合
- 使用延迟初始化提高性能
3. 使用C#进行异步编程
- 异步编程详解
- 基于任务的异步编程基础
4. 异步代码的调试、诊断和单元测试
- 使用 Visual Studio 调试任务
- 编写并行和异步代码的单元测试用例
5. .NET Core 附加的并行编程功能
- 一些 Unity 多线程实例
- 并行编程中的模式
- 分布式存储管理
其中有2个章节因为不符合我的学习目标,做了删改:
第12章:ASP .NET Core 中的 IIS 和 Kestrel:大部分是服务器相关知识,这里主要是介绍客户单的多线程使用,因此改为了只介绍异步流。
第14章:分布式存储管理:讲的主要是硬件相关的,没有什么意义,直接删除。