Kurs · Schulung · Workshop
Asynchronous Programming in C#
Zwei Tage asynchrone Programmierung für erfahrene C# und .NET Entwickler: von Threads, Tasks und async/await bis zu Task Schedulers, Synchronization Contexts und ValueTasks.
In der heutigen dynamischen Softwarelandschaft ist die Beherrschung der asynchronen Programmierung zunehmend essentiell für das Schreiben modernerer, schnellerer und hardware-optimierter Anwendungen. Da Multi-Core-CPUs heute Standard sind, ist parallele Verarbeitung der Schlüssel zur Leistungsoptimierung. Dieser umfassende zweitägige Kurs für erfahrene C# und .NET Entwickler deckt ein breites Spektrum von Themen ab, von Threads, Tasks und async/await bis hin zu fortgeschrittenen Features wie Task Schedulers und Synchronization Contexts. Der Kurs beinhaltet viele praktische Übungen, die es ermöglichen, die Konzepte der asynchronen Programmierung zu meistern und anzuwenden. Am Ende dieses Kurses werden Sie verstehen, wie Sie asynchrone Techniken nutzen können, um die Effizienz, Skalierbarkeit und Reaktionsfähigkeit Ihrer Anwendungen zu optimieren. Der Kurs ist auf dem neuesten Stand mit .NET 9 und C# 13.
Trainer
Stimmen unserer Teilnehmer:innen






Diese Kunden haben Kurse im gleichen Themen-Cluster bei uns gebucht.Mehr Kunden →
Inhalt
Der Kurs behandelt die folgenden Themen mit einem starken Fokus auf praktische Anwendung und Hands-on-Übungen:
– Einführung, Prozesse und Threads:
- Synchrone vs. asynchrone Programmierung
- Prozesse und Thread-Konzepte
- ThreadPool
- Worker- und I/O-Threads
- Wann der Thread Pool nicht verwendet werden sollte – Tasks:
- Erstellen von Tasks
- Rückgabe von Daten aus Tasks
- Tasks vs. Threads - wann was verwenden?
- Warten auf Tasks – Fehlerbehandlung in der asynchronen Programmierung:
- Exceptions in Threads
- Exceptions in Tasks
- Abbrechen von Tasks:
- Cancellation Token Source und Tokens
- Continuations – Async – Await:
- Async-Methoden
- Async State Machine
- Das await-Schlüsselwort
- Rückgabe von Daten aus async-Methoden
- Async all the way
- Async Lambdas
- Optimierung von async/await
- .GetAwaiter().GetResult()
- WaitAsync – Task Schedulers:
- Async Error Handling:
- Synchronization Contexts
- SynchronizationContext vs. TaskScheduler
- ConfigureAwait:
- Context Capturing – Value Tasks:
- Tasks vs ValueTasks
- Performance-Optimierungen
Der Kurs ist aktuell mit .NET 9 und C# 13 und beinhaltet viele praktische Übungen zur sofortigen Anwendung der erlernten Konzepte.
Der effektive Kursinhalt kann, abhängig von Trainer, Durchführung, Dauer und Konstellation der Teilnehmer:innen, von obigen Angaben abweichen.
In-House Kurs anfragen
Öffentlichen Termin anfragen
Kein passender öffentlicher Termin dabei? Trag dich unverbindlich ein – sobald genug Interesse besteht, planen wir einen neuen öffentlichen Termin und informieren dich zuerst.
Mehr über Asynchrone Programmierung in C#
Asynchrone Programmierung in C# ermöglicht es Entwicklern, reaktionsfähige und skalierbare Anwendungen zu erstellen, die Hardware-Ressourcen optimal nutzen. Mit modernen Multi-Core-Prozessoren ist parallele Verarbeitung der Schlüssel zur Leistungsoptimierung.Weitere Ressourcen:
Geschichte
Asynchrone Programmierung in C# entwickelte sich über mehrere Versionen. Das Task-based Asynchronous Pattern (TAP) wurde in .NET Framework 4.0 eingeführt, gefolgt von async/await in C# 5.0 (2012), was die asynchrone Programmierung erheblich vereinfachte.
Die Entwicklung wurde massgeblich von Stephen Toub und dem .NET-Team bei Microsoft vorangetrieben. Mit .NET Core und der Einführung von ValueTask, IAsyncEnumerable und weiteren Performance-Optimierungen wurde die asynchrone Programmierung kontinuierlich verbessert.
Heute ist asynchrone Programmierung ein fundamentaler Bestandteil moderner .NET-Anwendungen. Von Web-APIs über Desktop-Anwendungen bis hin zu Cloud-Services - async/await und das Task-System ermöglichen es Entwicklern, hochperformante und skalierbare Anwendungen zu erstellen. Mit .NET 9 und C# 13 wurden weitere Verbesserungen und neue Features für asynchrone Programmierung eingeführt.
