From c6885a00f82175b52a0ec18026d2af173448be77 Mon Sep 17 00:00:00 2001 From: Jason Zhu Date: Tue, 20 Jul 2021 14:30:17 +1000 Subject: [PATCH] Added section titles for chap14 --- chap14.md | 85 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 chap14.md diff --git a/chap14.md b/chap14.md new file mode 100644 index 0000000..c4bda2d --- /dev/null +++ b/chap14.md @@ -0,0 +1,85 @@ +# Chapter 14. Concurrency and Asynchrony + +## 14.1 Introduction + +## 14.2 Threading + +### 14.2.1 Creating a Thread + +### 14.2.2 Join and Sleep + +### 14.2.3 Blocking + +### 14.2.4 Local vs Shared State + +### 14.2.5 Locking and Thread Safety + +### 14.2.6 Passing Data to a Thread + +### 14.2.7 Exception Handling + +### 14.2.8 Signaling + +### 14.2.9 Threading in Rich Client Applications + +### 14.2.10 Synchronization Contexts + +### 14.2.11 The Thread Pool + +## 14.3 Tasks + +### 14.3.1 Staring a Task + +### 14.3.2 Returning values + +### 14.3.3 Exceptions + +### 14.3.4 Continuation + +### 14.3.5 TaskCompletionSource + +### 14.3.6 Task.Delay + +## 14.4 Principles of Asynchrony + +### 14.4.1 Synchronous vs. Asynchronous Operations + +### 14.4.2 What is Asynchronous Programming? + +### 14.4.3 Asynchronous Programming and Continuations + +### 14.4.4 Why Language Support is Important + +## 14.5 Asynchronous Functions in C# + +### 14.5.1 Awaiting + +### 14.5.2 Writing Asynchronous Functions + +### 14.5.3 Asynchronous Streams + +### 14.5.4 Asynchronous Methods in WinRT + +### 14.5.5 Asynchrony and Synchronization Contexts + +### 14.5.6 Optimizations + +## 14.6 Asynchronous Patterns + +### 14.6.1 Cancellation + +### 14.6.2 Progress Reporting + +### 14.6.3 The Task-Based Asynchronous Pattern + +### 14.6.4 Task Combinators + +### 14.6.5 Asynchronous Locking + +## 14.7 Obsolete Patterns + +### 14.7.1 Asynchronous Programming Model + +### 14.7.2 Event-Based Asynchronous Pattern + +### 14.7.3 BackgroundWorker \ No newline at end of file