Asynchronous and Parallel Programming in C# Training

Level

Advanced

Duration

16h / 2 days

Date

Individually arranged

Price

Individually arranged

Asynchronous and Parallel Programming in C# Training

This type of programming is particularly useful when developing applications that need to handle multiple operations simultaneously, such as web applications, web services, desktop applications, or solutions that process large amounts of data. The goal of this training is to teach participants how to effectively use asynchronous and parallel mechanisms in C# to improve the performance and responsiveness of their applications.

What will you learn?

  • Explore the core aspects of asynchronous programming
  • Understand how applications leveraging asynchronicity actually work
  • Learn the benefits of asynchronous programming, as well as its trade-offs and pitfalls
  • Discover new tools you may not have used before
  • Gain senior-level .NET knowledge required for building high-performance applications
Who is this training for?
  • logo infoshare System developers with intermediate knowledge of .NET Core and/or .NET Framework
  • logo infoshare .NET programmers who want to expand their knowledge in asynchronous programming
  • logo infoshare Developers who need to build highly efficient applications

Training Program

  1. Module 1: Asynchronous Programming (Part 1)

  • Principles of asynchronous code execution
  • Understanding async/await operations
  • Introduction to State Machines
  • Awaiter pattern
  1. Module 2: Parallel Programming

  • Threads, ThreadPool, and Tasks
  • Working with the Task Parallel Library (TPL)
  • Launching and managing parallel tasks
  • Proper handling of task results, continuations, and cancellations
  • Exception handling in parallel code
  • Using the Parallel class
  • Data structures for resource sharing and synchronization in concurrent tasks
  1. Module 3: Asynchronous Programming (Part 2)

  • Differences between async/await and direct TPL usage
  • I/O-bound vs CPU-bound tasks in asynchronous execution
  • Correct integration of synchronous and asynchronous code
  • Handling multiple asynchronous patterns in a single project
  1. Module 4: Asynchronicity in ASP.NET

  • SynchronizationContext and ConfigureAwait
  • Key differences between .NET Framework and .NET Core
  • Preventing deadlocks in ASP.NET (.NET Framework)
  • Asynchronous programming in Entity Framework
  • Implementing background tasks

    • Approaches, pros & cons
    • Synchronization and resource sharing
  1. Module 5: Best Practices in Asynchronous Programming

  1. Module 6: Analyzing Asynchronous Tasks

  • Debugging asynchronous code
  • Profiling asynchronous code

Contact us

we will organize training for you tailored to your needs

Przemysław Wołosz

Key Account Manager

przemyslaw.wolosz@infoShareAcademy.com

    The controller of your personal data is InfoShare Academy Sp. z o.o. with its registered office in Gdańsk, al. Grunwaldzka 427B, 80-309 Gdańsk, KRS: 0000531749, NIP: 5842742121. Personal data are processed in accordance with information clause.