Überwachungsobjekte über Threads ausführen, Teil 2 16.03.2017, 00:00 Uhr

Threads bündeln

Neue Threads zum Überwachen von Arbeitsspeicher und CPU-Auslastung.
User-Threads werden genutzt, um ­unterschiedliche Aufgaben parallel und unabhängig voneinander auszuführen. Obgleich sie sich effektiv nutzen lassen, greifen Entwickler nur selten auf ­Threads zurück. Dies hat mehrere Gründe: So verläuft die Codierung nicht li­near und die einzelnen Threads laufen parallel nebeneinander. Die Threads muss der Entwickler explizit starten und auch wieder beenden. Einmal gestartet, verrichten Threads ihre Dienste im Hintergrund und präsentieren sich als leichtgewichtige Prozesse. Das Debuggen gestaltet sich allerdings schwieriger, da die Programmverfolgung im Debug-Modus bei mehreren parallelen Threads sprunghaft wird. Um die Schwierigkeiten auszuräumen, sollten Sie Threads immer einzeln nach Fehlern durchsuchen. Im Beispielprogramm ThreadAlerts sorgen Sie beispielsweise dafür, dass immer nur ein einzelnes Thread-basiertes Überwachungsobjekt im Testlauf instanziert und anschließend schrittweise überprüft wird.
Prozessanalyse-Tools legen zur Laufzeit nicht nur Prozesseigenschaften,

sondern auch Module und Threads ­offen (Bild 1)

Jetzt 1 Monat kostenlos testen!

Sie wollen zukünftig auch von den Vorteilen eines plus-Abos profitieren? Werden Sie jetzt dotnetpro-plus-Kunde.
  • + Digitales Kundenkonto,
  • + Zugriff auf das digitale Heft,
  • + Zugang zum digitalen Heftarchiv,
  • + Auf Wunsch: Weekly Newsletter,
  • + Sämtliche Codebeispiele im digitalen Heftarchiv verfügbar