注重体验与质量的电子书资源下载网站
分类于: 互联网 其它
简介
C#多线程编程实战(原书第2版) 豆 0.0分
资源最后更新于 2020-11-25 04:18:45
作者:[美]易格恩·阿格佛温
出版社:机械工业出版社
出版日期:2017-01
ISBN:9787111561026
文件格式: pdf
简介· · · · · ·
为了创建这样的应用程序,你需要学习如何在程序中有效地使用多个CPU核心。如果你使用的是Microsoft.NET开发平台以及C#编程语言,那么本书将是一个编写高性能、高响应性的应用程序的完美起点。本书的目的是给你提供C#中多线程以及并行编程的详尽指导。我们将从基本概念开始,每章主题比前一章都有所拔高,后展示了现实世界中的并行编程模式以及Windows商店应用示例。 为了创建这样的应用程序,你需要学习如何在程序中有效地使用多个CPU核心。如果你使用的是Microsoft.NET发平台以及C#编程语言,那么本书将是一个编写高性能、高响应性的应用程序的完美起。本书的目的是给你提供C#中多线程以及并行编程的详尽指导。我们将从基本概念始,每章主题比前一章都有所拔高,后展示了现实世界中的并行编程模式以及Windows商店应用示例。
目录
译者序
前言
本书内容
准备事项
读者对象
下载示例代码
第1章 线程基础
1.1 简介
1.2 使用C#创建线程
1.3 暂停线程
1.4 线程等待
1.5 终止线程
1.6 检测线程状态
1.7 线程优先级
1.8 前台线程和后台线程
1.9 向线程传递参数
1.10 使用C#中的lock关键字
1.11 使用Monitor类锁定资源
1.12 处理异常
第2章 线程同步
2.1 简介
2.2 执行基本的原子操作
2.3 使用Mutex类
2.4 使用SemaphoreSlim类
2.5 使用AutoResetEvent类
2.6 使用ManualResetEventSlim类
2.7 使用CountDownEvent类
2.8 使用Barrier类
2.9 使用ReaderWriterLockSlim类
2.10 使用SpinWait类
第3章 使用线程池
3.1 简介
3.2 在线程池中调用委托
3.3 向线程池中放入异步操作
3.4 线程池与并行度
3.5 实现一个取消选项
3.6 在线程池中使用等待事件处理器及超时
3.7 使用计时器
3.8 使用BackgroundWorker组件
第4章 使用任务并行库
4.1 简介
4.2 创建任务
4.3 使用任务执行基本的操作
4.4 组合任务
4.5 将APM模式转换为任务
4.6 将EAP模式转换为任务
4.7 实现取消选项
4.8 处理任务中的异常
4.9 并行运行任务
4.10 使用TaskScheduler配置任务的执行
第5章 使用C#6.0
5.1 简介
5.2 使用await操作符获取异步任务结果
5.3 在lambda表达式中使用await操作符
5.4 对连续的异步任务使用await操作符
5.5 对并行执行的异步任务使用await操作符
5.6 处理异步操作中的异常
5.7 避免使用捕获的同步上下文
5.8 使用async void方法
5.9 设计一个自定义的awaitable类型
5.10 对动态类型使用await
第6章 使用并发集合
6.1 简介
6.2 使用ConcurrentDictionary
6.3 使用ConcurrentQueue实现异步处理
6.4 改变ConcurrentStack异步处理顺序
6.5 使用ConcurrentBag创建一个可扩展的爬虫
6.6 使用BlockingCollection进行异步处理
第7章 使用PLINQ
7.1 简介
7.2 使用Parallel类
7.3 并行化LINQ查询
7.4 调整PLINQ查询的参数
7.5 处理PLINQ查询中的异常
7.6 管理PLINQ查询中的数据分区
7.7 为PLINQ查询创建一个自定义的聚合器
第8章 使用Reactive Extensions
8.1 简介
8.2 将普通集合转换为异步的可观察集合
8.3 编写自定义的可观察对象
8.3.1 准备工作
8.3.2 实现方式
8.3.3 工作原理
8.4 使用Subject
8.5 创建可观察的对象
8.6 对可观察的集合使用LINQ查询
8.7 使用Rx创建异步操作
第9章 使用异步I/O
9.1 简介
9.2 异步地使用文件
9.3 编写一个异步的HTTP服务器和客户端
9.4 异步操作数据库
9.5 异步调用WCF服务
第10章 并行编程模式
10.1 简介
10.2 实现惰性求值的共享状态
10.3 使用BlockingCollection实现并行管道
10.4 使用TPL数据流实现并行管道
10.5 使用PLINQ实现Map/Reduce模式
第11章 更多信息
11.1 简介
11.2 在通用Windows平台应用中使用计时器
11.3 在通常的应用程序中使用WinRT
11.4 在通用Windows平台应用中使用BackgroundTask
11.5 在OS X上运行.NET内核应用程序
11.6 在Ubuntu Linux上运行.NET内核应用程序
前言
本书内容
准备事项
读者对象
下载示例代码
第1章 线程基础
1.1 简介
1.2 使用C#创建线程
1.3 暂停线程
1.4 线程等待
1.5 终止线程
1.6 检测线程状态
1.7 线程优先级
1.8 前台线程和后台线程
1.9 向线程传递参数
1.10 使用C#中的lock关键字
1.11 使用Monitor类锁定资源
1.12 处理异常
第2章 线程同步
2.1 简介
2.2 执行基本的原子操作
2.3 使用Mutex类
2.4 使用SemaphoreSlim类
2.5 使用AutoResetEvent类
2.6 使用ManualResetEventSlim类
2.7 使用CountDownEvent类
2.8 使用Barrier类
2.9 使用ReaderWriterLockSlim类
2.10 使用SpinWait类
第3章 使用线程池
3.1 简介
3.2 在线程池中调用委托
3.3 向线程池中放入异步操作
3.4 线程池与并行度
3.5 实现一个取消选项
3.6 在线程池中使用等待事件处理器及超时
3.7 使用计时器
3.8 使用BackgroundWorker组件
第4章 使用任务并行库
4.1 简介
4.2 创建任务
4.3 使用任务执行基本的操作
4.4 组合任务
4.5 将APM模式转换为任务
4.6 将EAP模式转换为任务
4.7 实现取消选项
4.8 处理任务中的异常
4.9 并行运行任务
4.10 使用TaskScheduler配置任务的执行
第5章 使用C#6.0
5.1 简介
5.2 使用await操作符获取异步任务结果
5.3 在lambda表达式中使用await操作符
5.4 对连续的异步任务使用await操作符
5.5 对并行执行的异步任务使用await操作符
5.6 处理异步操作中的异常
5.7 避免使用捕获的同步上下文
5.8 使用async void方法
5.9 设计一个自定义的awaitable类型
5.10 对动态类型使用await
第6章 使用并发集合
6.1 简介
6.2 使用ConcurrentDictionary
6.3 使用ConcurrentQueue实现异步处理
6.4 改变ConcurrentStack异步处理顺序
6.5 使用ConcurrentBag创建一个可扩展的爬虫
6.6 使用BlockingCollection进行异步处理
第7章 使用PLINQ
7.1 简介
7.2 使用Parallel类
7.3 并行化LINQ查询
7.4 调整PLINQ查询的参数
7.5 处理PLINQ查询中的异常
7.6 管理PLINQ查询中的数据分区
7.7 为PLINQ查询创建一个自定义的聚合器
第8章 使用Reactive Extensions
8.1 简介
8.2 将普通集合转换为异步的可观察集合
8.3 编写自定义的可观察对象
8.3.1 准备工作
8.3.2 实现方式
8.3.3 工作原理
8.4 使用Subject
8.5 创建可观察的对象
8.6 对可观察的集合使用LINQ查询
8.7 使用Rx创建异步操作
第9章 使用异步I/O
9.1 简介
9.2 异步地使用文件
9.3 编写一个异步的HTTP服务器和客户端
9.4 异步操作数据库
9.5 异步调用WCF服务
第10章 并行编程模式
10.1 简介
10.2 实现惰性求值的共享状态
10.3 使用BlockingCollection实现并行管道
10.4 使用TPL数据流实现并行管道
10.5 使用PLINQ实现Map/Reduce模式
第11章 更多信息
11.1 简介
11.2 在通用Windows平台应用中使用计时器
11.3 在通常的应用程序中使用WinRT
11.4 在通用Windows平台应用中使用BackgroundTask
11.5 在OS X上运行.NET内核应用程序
11.6 在Ubuntu Linux上运行.NET内核应用程序