• Online, Self-Paced
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

Framework Connections

The materials within this course focus on the Knowledge Skills and Abilities (KSAs) identified within the Specialty Areas listed below. Click to view Specialty Area details within the interactive National Cybersecurity Workforce Framework.