Course Description
Discover how to implement threaded programs, use a Task Parallel Library and explore the differences between asynchronous and parallel programming.
Learning Objectives
Programming in C#: Managing Multithreating
- describe the differences between thrown and re-thrown exceptions
- using locking to prevent data from being accessed by multiple threads at a time
- use synchronization events
- use cancellation tokens to cancel a long-running task
- demonstrate how to implement thread-safe methods to handle race conditions
- use the interlocked class for thread-safe numeric access
- perform asynchronous operation using task
- use parallel invoke methods
- distinguish between parallel for and for statements
- use parallel ForEach methods
- demonstrate how to spawn threads using ThreadPool
- use task to unblock the user interface thread
- speed up LINQ queries using Parallel LINQ (PLINQ)
- manage data using ConcurrentBag collection
- demonstrate how to facilitate asynchronous pattern usage for Async and Await Keywords
- schedule tasks using the task object
- set up a series of tasks to run in a specified sequence