Optimizing performance with parallelism & asynchrony in C#
Optimizing performance with parallelism & asynchrony in C#
We will explore the differences between CPU-bound and IO-bound work as well as how both could be optimized. Starting with a quick theoretical introduction, we will then move on to code examples and benchmarks on both parallel and asynchronous challenges. We will see when we should vs. should not parallelize specific tasks. We will look at some best practices for exception handling and avoiding memory leaks when programming concurrently. Finally, we will briefly cover what libraries .NET provide us with to simplify our data processing.