Chapter 3 – Parallel Aggregation
Chapter 2 shows how to use parallel techniques that apply the same independent operation to many input values. However, not all parallel loops have loop bodies that execute independently. For example, a sequential loop that calculates a sum does not have independent steps. All the steps accumulate their results in a single variable that represents the sum calculated up to that point. This accumulated value is an aggregation. If you were to convert the sequential loop to a parallel loop without making any other changes, your code would fail to produce the expected result.
Chapter 5 – Futures
In Chapter 3, “Parallel Tasks,” you saw how the Parallel Task pattern allows you to fork the flow of control in a program. In this chapter, you’ll see how control flow and data flow can be integrated with the Futures pattern.
The PDF on CodePlex also includes the latest versions of the Preface, Introduction and Chapters 2-7 with modifications based on reviewer feedback.
In addition to the new text we’ve also published the samples to all the chapters. Each chapter contains basic samples of using the Parallel Pattern Library or Asynchronous Agents Library as well as a complete example that shows a more real world application and demonstrates both a sequential and parallel solutions.
We would really like feedback on both the text and the samples. Please download them from CodePlex and post your feedback or questions there.