ProcessThread ProcessThread ProcessThread ProcessThread Class

Definition

Stellt einen Prozessthread für ein Betriebssystem dar.Represents an operating system process thread.

public ref class ProcessThread : System::ComponentModel::Component
public class ProcessThread : System.ComponentModel.Component
type ProcessThread = class
    inherit Component
Public Class ProcessThread
Inherits Component
Vererbung

Hinweise

Dient ProcessThread zum Abrufen von Informationen zu einem Thread, der derzeit auf dem System ausgeführt wird.Use ProcessThread to obtain information about a thread that is currently running on the system. Auf diese Weise können Sie z. b. die Leistungsmerkmale des Threads überwachen.Doing so allows you, for example, to monitor the thread's performance characteristics.

Wichtig

Dieser Typ implementiert die IDisposable-Schnittstelle.This type implements the IDisposable interface. Nach Abschluss der Verwendung sollten Sie den Typ entweder direkt oder indirekt löschen.When you have finished using the type, you should dispose of it either directly or indirectly. Zum direkten Löschen des Typs rufen Sie seine Dispose-Methode in einem try/catch-Block auf.To dispose of the type directly, call its Dispose method in a try/catch block. Zum indirekten Löschen verwenden Sie ein Sprachkonstrukt wie using (in C#) oder Using (in Visual Basic).To dispose of it indirectly, use a language construct such as using (in C#) or Using (in Visual Basic). Weitere Informationen finden Sie im Abschnitt „Verwenden eines Objekts, das IDisposable implementiert“ des Themas „Die IDisposable-Schnittstelle“.For more information, see the "Using an Object that Implements IDisposable" section in the IDisposable interface topic.

Ein Thread ist ein Ausführungs Pfad durch ein Programm.A thread is a path of execution through a program. Dies ist die kleinste Ausführungs Einheit, die von Win32 geplant wird.It is the smallest unit of execution that Win32 schedules. Sie besteht aus einem Stapel, dem Status der CPU-Register und einem Eintrag in der Ausführungs Liste des System Planers.It consists of a stack, the state of the CPU registers, and an entry in the execution list of the system scheduler.

Ein Prozess besteht aus einem oder mehreren Threads und dem Code, den Daten und anderen Ressourcen eines Programms im Arbeitsspeicher.A process consists of one or more threads and the code, data, and other resources of a program in memory. Typische Programmressourcen sind geöffnete Dateien, Semaphoren und dynamisch zugeordneter Speicher.Typical program resources are open files, semaphores, and dynamically allocated memory. Jede Ressource eines Prozesses wird von allen Threads dieses Prozesses gemeinsam genutzt.Each resource of a process is shared by all that process's threads.

Ein Programm wird ausgeführt, wenn der Systemplaner die Ausführungs Steuerung an eines der Threads des Programms übergibt.A program executes when the system scheduler gives execution control to one of the program's threads. Der Planer bestimmt, welche Threads ausgeführt werden sollen und wann.The scheduler determines which threads should run and when. Ein Thread mit niedrigerer Priorität ist möglicherweise gezwungen, zu warten, während Threads mit höherer Priorität ihre Aufgaben erfüllen.A lower-priority thread might be forced to wait while higher-priority threads complete their tasks. Auf Multiprozessorcomputern kann der Planer einzelne Threads auf verschiedene Prozessoren verschieben und so die CPU-Auslastung ausgleichen.On multiprocessor computers, the scheduler can move individual threads to different processors, thus balancing the CPU load.

Jeder Prozess beginnt mit einem einzelnen Thread, der als primärer Thread bezeichnet wird.Each process starts with a single thread, which is known as the primary thread. Jeder Thread kann zusätzliche Threads generieren.Any thread can create additional threads. Alle Threads innerhalb eines Prozesses verwenden den Adressraum dieses Prozesses gemeinsam.All the threads within a process share the address space of that process.

Der primäre Thread befindet sich nicht notwendigerweise am ersten Index in der Auflistung.The primary thread is not necessarily located at the first index in the collection.

Hinweis

Ab der .NET Framework Version 2,0 wurde die Möglichkeit, auf die Leistungsdaten auf anderen Computern zu verweisen, für viele der .NET Framework Methoden und-Eigenschaften beseitigt.Starting with the .NET Framework version 2.0, the ability to reference performance counter data on other computers has been eliminated for many of the .NET Framework methods and properties. Diese Änderung wurde vorgenommen, um die Leistung zu verbessern und nicht-Administratoren die ProcessThread Verwendung der-Klasse zu ermöglichen.This change was made to improve performance and to enable non-administrators to use the ProcessThread class. Daher erhalten einige Anwendungen, die in früheren Versionen der .NET Framework keine Ausnahmen erhalten haben, jetzt möglicherweise eine NotSupportedException.As a result, some applications that did not get exceptions in earlier versions of the .NET Framework may now get a NotSupportedException. Die betroffenen Methoden und Eigenschaften sind zu groß, um hier aufgeführt zu werden. die Ausnahme Informationen wurden jedoch den Themen zu betroffenen Elementen hinzugefügt.The methods and properties affected are too numerous to list here, but the exception information has been added to the affected member topics.

Die Threads eines Prozesses werden einzeln ausgeführt und sind sich nicht gegenseitig, es sei denn, Sie machen Sie gegenseitig sichtbar.The threads of a process execute individually and are unaware of each other unless you make them visible to each other. Threads, die gemeinsame Ressourcen gemeinsam nutzen, müssen ihre Arbeit jedoch mithilfe von Semaphoren oder einer anderen Methode der prozessübergreifenden Kommunikation koordinieren.Threads that share common resources, however, must coordinate their work by using semaphores or another method of interprocess communication.

Um eine Auflistung aller ProcessThread -Objekte zu erhalten, die dem aktuellen Prozess zugeordnet sind, können Sie die Process Threads -Eigenschaft der-Instanz erhalten.To get a collection of all the ProcessThread objects associated with the current process, get the Threads property of the Process instance.

Eigenschaften

BasePriority BasePriority BasePriority BasePriority

Ruft die Basispriorität des Threads ab.Gets the base priority of the thread.

CanRaiseEvents CanRaiseEvents CanRaiseEvents CanRaiseEvents

Ruft einen Wert ab, der angibt, ob die Komponente ein Ereignis auslösen kann.Gets a value indicating whether the component can raise an event.

(Inherited from Component)
Container Container Container Container

Ruft den IContainer ab, der die Component enthält.Gets the IContainer that contains the Component.

(Inherited from Component)
CurrentPriority CurrentPriority CurrentPriority CurrentPriority

Ruft die aktuelle Priorität des Threads ab.Gets the current priority of the thread.

DesignMode DesignMode DesignMode DesignMode

Ruft einen Wert ab, der angibt, ob sich Component gegenwärtig im Entwurfsmodus befindet.Gets a value that indicates whether the Component is currently in design mode.

(Inherited from Component)
Events Events Events Events

Ruft die Liste der Ereignishandler ab, die dieser Component angefügt sind.Gets the list of event handlers that are attached to this Component.

(Inherited from Component)
Id Id Id Id

Ruft den eindeutigen Bezeichner des Threads ab.Gets the unique identifier of the thread.

IdealProcessor IdealProcessor IdealProcessor IdealProcessor

Legt den bevorzugten Prozessor fest, auf dem dieser Thread ausgeführt werden soll.Sets the preferred processor for this thread to run on.

PriorityBoostEnabled PriorityBoostEnabled PriorityBoostEnabled PriorityBoostEnabled

Ruft einen Wert ab, der angibt, ob das Betriebssystem die Priorität des zugeordneten Threads vorübergehend erhöhen soll, sobald das Hauptfenster des Threadprozesses den Fokus hat, oder legt diesen Wert fest.Gets or sets a value indicating whether the operating system should temporarily boost the priority of the associated thread whenever the main window of the thread's process receives the focus.

PriorityLevel PriorityLevel PriorityLevel PriorityLevel

Ruft die Prioritätsebene des Threads ab oder legt diese fest.Gets or sets the priority level of the thread.

PrivilegedProcessorTime PrivilegedProcessorTime PrivilegedProcessorTime PrivilegedProcessorTime

Ruft die Zeit ab, während der der Thread im Betriebssystemkern Code ausgeführt hat.Gets the amount of time that the thread has spent running code inside the operating system core.

ProcessorAffinity ProcessorAffinity ProcessorAffinity ProcessorAffinity

Legt die Prozessoren fest, auf denen der zugeordnete Thread ausgeführt werden kann.Sets the processors on which the associated thread can run.

Site Site Site Site

Ruft den ISite von Component ab oder legt ihn fest.Gets or sets the ISite of the Component.

(Inherited from Component)
StartAddress StartAddress StartAddress StartAddress

Ruft die Speicheradresse der Funktion ab, die vom Betriebssystem aufgerufen wurde, das diesen Thread gestartet hat.Gets the memory address of the function that the operating system called that started this thread.

StartTime StartTime StartTime StartTime

Ruft die Zeit ab, zu der das Betriebssystem den Thread gestartet hat.Gets the time that the operating system started the thread.

ThreadState ThreadState ThreadState ThreadState

Ruft den aktuellen Zustand dieses Threads ab.Gets the current state of this thread.

TotalProcessorTime TotalProcessorTime TotalProcessorTime TotalProcessorTime

Ruft die gesamte Zeit ab, während der der Thread den Prozessor verwendet hat.Gets the total amount of time that this thread has spent using the processor.

UserProcessorTime UserProcessorTime UserProcessorTime UserProcessorTime

Ruft die Zeit ab, während der der zugeordnete Thread in der Anwendung Code ausgeführt hat.Gets the amount of time that the associated thread has spent running code inside the application.

WaitReason WaitReason WaitReason WaitReason

Ruft die Ursache für den Wartezustand des Threads ab.Gets the reason that the thread is waiting.

Methoden

CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type)

Erstellt ein Objekt mit allen relevanten Informationen, die zum Generieren eines Proxys für die Kommunikation mit einem Remoteobjekt erforderlich sind.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
Dispose() Dispose() Dispose() Dispose()

Gibt alle vom Component verwendeten Ressourcen frei.Releases all resources used by the Component.

(Inherited from Component)
Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Gibt die von Component verwendeten nicht verwalteten Ressourcen und optional die verwalteten Ressourcen frei.Releases the unmanaged resources used by the Component and optionally releases the managed resources.

(Inherited from Component)
Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Inherited from Object)
GetLifetimeService() GetLifetimeService() GetLifetimeService() GetLifetimeService()

Ruft das aktuelle Lebensdauerdienstobjekt ab, das die Lebensdauerrichtlinien für diese Instanz steuert.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetService(Type) GetService(Type) GetService(Type) GetService(Type)

Gibt ein Objekt zurück, das einen von der Component oder von deren Container bereitgestellten Dienst darstellt.Returns an object that represents a service provided by the Component or by its Container.

(Inherited from Component)
GetType() GetType() GetType() GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Inherited from Object)
InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService()

Ruft ein Lebensdauerdienstobjekt zur Steuerung der Lebensdauerrichtlinie für diese Instanz ab.Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean)

Erstellt eine flache Kopie des aktuellen MarshalByRefObject-Objekts.Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
ResetIdealProcessor() ResetIdealProcessor() ResetIdealProcessor() ResetIdealProcessor()

Setzt den für diesen Thread idealen Prozessor zurück, um anzugeben, dass kein einzelner idealer Prozessor vorhanden ist.Resets the ideal processor for this thread to indicate that there is no single ideal processor. Das heißt, dass jeder Prozessor ideal sein kann.In other words, so that any processor is ideal.

ToString() ToString() ToString() ToString()

Gibt einen String zurück, der den Namen der Component enthält (sofern vorhanden).Returns a String containing the name of the Component, if any. Diese Methode darf nicht überschrieben werden.This method should not be overridden.

(Inherited from Component)

Ereignisse

Disposed Disposed Disposed Disposed

Tritt ein, wenn die Komponente durch einen Aufruf der Dispose()-Methode freigegeben wird.Occurs when the component is disposed by a call to the Dispose() method.

(Inherited from Component)

Gilt für:

Siehe auch