Verwaltetes ThreadingManaged Threading

Unabhängig davon, ob eine Anwendung für einen Computer mit einem oder mehreren Prozessoren entwickelt wurde, sollte sie optimal auf die Interaktion mit einem Benutzer reagieren, auch wenn sie gerade mit anderen Aufgaben befasst ist.Whether you are developing for computers with one processor or several, you want your application to provide the most responsive interaction with the user, even if the application is currently doing other work. Die Verwendung verschiedener Ausführungsthreads stellt eine der effektivsten Möglichkeiten dar, eine Anwendung entsprechend reaktionsschnell zu gestalten und gleichzeitig den Prozessor zwischen Benutzerereignissen oder sogar währenddessen zu nutzen.Using multiple threads of execution is one of the most powerful ways to keep your application responsive to the user and at the same time make use of the processor in between or even during user events. In diesem Abschnitt werden die grundlegenden Threadingkonzepte eingeführt und insbesondere verwaltete Threadingkonzepte und die Verwendung von verwaltetem Threading ausführlich behandelt.While this section introduces the basic concepts of threading, it focuses on managed threading concepts and using managed threading.

Hinweis

Beginnend mit .NET Framework 4.NET Framework 4 wurde die Multithreadprogrammierung durch die Klassen System.Threading.Tasks.Parallel und System.Threading.Tasks.Task, Parallel LINQ (PLINQ), neue parallele Auflistungsklassen im System.Collections.Concurrent-Namespace und ein neues Programmiermodell, das auf dem Konzept von Aufgaben anstatt von Threads basiert, erheblich vereinfacht.Starting with the .NET Framework 4.NET Framework 4, multithreaded programming is greatly simplified with the System.Threading.Tasks.Parallel and System.Threading.Tasks.Task classes, Parallel LINQ (PLINQ), new concurrent collection classes in the System.Collections.Concurrent namespace, and a new programming model that is based on the concept of tasks rather than threads. Weitere Informationen finden Sie unter Parallel Programming in the .NET Framework (Parallele Programmierung in .NET Framework).For more information, see Parallel Programming.

In diesem AbschnittIn This Section

Grundlagen des verwalteten ThreadingsManaged Threading Basics
Enthält eine Übersicht über das verwaltete Threading und erläutert, in welchen Fällen mehrere Threads verwendet werden.Provides an overview of managed threading and discusses when to use multiple threads.

Verwenden von Threads und ThreadingUsing Threads and Threading
Erklärt das Erstellen, Starten, Anhalten, Fortsetzen und Abbrechen von Threads.Explains how to create, start, pause, resume, and abort threads.

Empfohlene Vorgehensweise für das verwaltete ThreadingManaged Threading Best Practices
Behandelt Synchronisierungsstufen, die Vermeidung von Deadlock- und Racebedingungen, Einzel- und Multiprozessorcomputer und weitere Threadingprobleme.Discusses levels of synchronization, how to avoid deadlocks and race conditions, single-processor and multiprocessor computers, and other threading issues.

Threading Objects and Features (Threadingobjekte und -funktionen)Threading Objects and Features
Beschreibt die verwalteten Klassen, mit denen Sie Threadingaktivitäten sowie die Daten von Objekten, auf die in verschiedenen Threads zugegriffen wird, synchronisieren können, und bietet eine Übersicht über Threadpoolthreads.Describes the managed classes you can use to synchronize the activities of threads and the data of objects accessed on different threads, and provides an overview of thread pool threads.

ReferenzReference

System.Threading
Enthält Klassen zum Verwenden und Synchronisieren von verwalteten Threads.Contains classes for using and synchronizing managed threads.

System.Collections.Concurrent
Enthält Auflistungsklassen, die sicher mit mehreren Threads verwendet werden können.Contains collection classes that are safe for use with multiple threads.

System.Threading.Tasks
Enthält Klassen zum Erstellen und Planen von parallelen Verarbeitungsaufgaben.Contains classes for creating and scheduling concurrent processing tasks.

AnwendungsdomänenApplication Domains
Übersicht über Anwendungsdomänen und deren Verwendung durch die Common Language-Infrastruktur.Provides an overview of application domains and their use by the Common Language Infrastructure.

Asynchrone Datei-E/AAsynchronous File I/O
Beschreibt die Leistungsvorteile und den grundlegenden Ablauf der asynchronen E/A.Describes the performance advantages and basic operation of asynchronous I/O.

Task-based Asynchronous Pattern (TAP) (Aufgabenbasiertes asynchrones Muster)Task-based Asynchronous Pattern (TAP)
Bietet eine Übersicht über das empfohlene Muster für asynchrone Programmierung in .NET.Provides an overview of the recommended pattern for asynchronous programming in .NET.

Asynchrones Aufrufen von synchronen MethodenCalling Synchronous Methods Asynchronously
Erläutert das Aufrufen von Methoden für Threadpoolthreads mithilfe der integrierten Features von Delegaten.Explains how to call methods on thread pool threads using built-in features of delegates.

Parallele ProgrammierungParallel Programming
Beschreibt die parallelen Programmierbibliotheken, die die Verwendung mehrerer Threads in Anwendungen vereinfachen.Describes the parallel programming libraries, which simplify the use of multiple threads in applications.

Parallel LINQ (PLINQ) (Paralleles LINQ (PLINQ))Parallel LINQ (PLINQ)
Beschreibt ein System zum parallelen Ausführen von Abfragen, um die Vorteile mehrerer Prozessoren zu nutzen.Describes a system for running queries in parallel, to take advantage of multiple processors.