Schulung Multithreading in .NET/C# (System.Threading)

Beschreibung/Inhalt

Dieses Schulungsmodul bezieht sich auf ein Basistechnik, die es seit .NET 1.0 gibt. Heutzutage empfiehlt es sich, auf das abstraktes Multithreading-Konzept der "Tasks" zu setzen. Dazu bieten wir Modulungsmodul Task Parallel Library (TPL) - Parallelprogrammierung/Multithreading in .NET an.

Basiswissen
Warum "Parallelprogrammierung"?

  • Vor- und Nachteile
  • Performancesteigerung
  • Reaktivität / UI-Entkopplung


  • Grundbegriffe
  • Tasks und Threas
  • Thread-safe
  • Reentrant
  • Synchronisation
  • Deadlocks


  • Hardware
  • Mehrkernprozessoren
  • Mehrere Prozessoren
  • NUMA


  • Amdahl’s Gesetz
  • Thread-Erzeugung
  • Granularität von Arbeitseinheiten


  • Multi-Threading mit .NET
  • Asynchrone Methodenaufrufe
  • FCL-Klassen mit asynchronem Aufruf
  • Background-Worker
  • Erzeugung von Threads mit System.Threading
  • Parameterübergabe an Threads
  • Steuerung von Threads
  • Thread Pools
  • Synchronisierung ( Semaphoren, Queues, Mutex etc.)
  • Debugging von Threads


  • Herausforderungen/Stolpersteine und Best Practies bei der Parallelisierung
  • Leistungsfragen (Performance)
  • Data Races
  • Deadlocks erkennen und vermeiden


  • Optional: Parallel LINQ
    Optional: Task Parallel Library (TPL)
    Optional: Concurrency and Coordination Runtime (CCR)
    Optional: OpenMP

    Dauer
    Auf Wunsch. Gerne geben wir Ihnen eine Empfehlung zur notwendigen Schulungsdauer, wenn Sie uns in der Anfrage Ihre Vorkenntnisse und Ziele nennen.
    Ort
    Online oder in Deutschland, Österreich und der Schweiz an Ihrem Firmensitz
    Schulungsdidaktik
    Nach Ihrer Wahl: Klassische Schulung mit PC-Übungen, reine Präsentation ohne PC-Übungen oder interaktiver Workshop mit Beratungsanteil