- Course Introduction
What you'll learn
- Create and run independent tasks
- Manage synchronized access to data
- Effectively use parallel collections
- Work with task continuations
- Write parallel loops
- Leverage the power of Parallel LINQ
- Master asynchronous programming (async/await)
Description
This course is about .NET Parallel Programming with C# and covers the core multithreading facilities in the .NET Framework, namely the Task Parallel Library (TPL) and Parallel LINQ (PLINQ).
This course will teach you about:
Task Programming: how to create and run tasks, cancel them, wait on them and handle exceptions that occur in tasks.
Data Sharing and Synchronization, ensuring your access to shared data also happens in a safe and consistent manner.
Concurrent Collections, such as ConcurrentBag, which operate correctly even when accessed from multiple threads.
Task Coordination concepts, including the idea of continuations, as well as uses of synchronization primitives to coordinate tasks.
Parallel Loops which let you easily iterate over a counter or collection while partitioning the data and processing it on separate threads.
Parallel LINQ, the parallel version of .NET's awesome Language-Integrated Query (LINQ) technology.
Async/Await and .NET's support for asynchronous programming.
This course is suitable for:
Beginner and experienced .NET/C# developers
Anyone interested in multi-threading, parallelism and asynchronous programming
The course consists of the following materials:
Video lectures showing hands-on programming
C# files that you can download and run
Before taking the course, you should be comfortable with the C# programming language and familiar with multi-threading.
Students also bought
Información sobre el Instructor

- 4.44 Calificación
- 150310 Estudiantes
- 21 Cursos
Dmitri Nesteruk
Software/Hardware Engineering • Quant Finance • Algotrading
Dmitri is a quant, developer, book author and course author. His interests lie in software development and integration practices in the areas of computation, quantitative finance and algorithmic trading. His technological interests include C# and C++ programming as well high-performance computing using technologies such as CUDA and FPGAs. He has been a C# MVP since 2009.