ProcessThread Třída

Definice

Představuje vlákno procesu operačního systému.Represents an operating system process thread.

public ref class ProcessThread : System::ComponentModel::Component
public ref class ProcessThread
public class ProcessThread : System.ComponentModel.Component
public class ProcessThread
type ProcessThread = class
    inherit Component
type ProcessThread = class
Public Class ProcessThread
Inherits Component
Public Class ProcessThread
Dědičnost
Dědičnost
ProcessThread

Poznámky

Slouží ProcessThread k získání informací o vlákně, které je aktuálně spuštěné v systému.Use ProcessThread to obtain information about a thread that is currently running on the system. To vám umožní například monitorovat výkonnostní charakteristiky vlákna.Doing so allows you, for example, to monitor the thread's performance characteristics.

Důležité

Tento typ implementuje IDisposable rozhraní.This type implements the IDisposable interface. Po dokončení používání typu byste ho měli nakládat buď přímo, nebo nepřímo.When you have finished using the type, you should dispose of it either directly or indirectly. Chcete-li přímo uvolnit typ, zavolejte jeho Dispose metodu v try / catch bloku.To dispose of the type directly, call its Dispose method in a try/catch block. Chcete-li ji nakládat nepřímo, použijte konstrukci jazyka, například using (v jazyce C#) nebo Using (v Visual Basic).To dispose of it indirectly, use a language construct such as using (in C#) or Using (in Visual Basic). Další informace naleznete v části "použití objektu, který implementuje IDisposable" v IDisposable tématu rozhraní.For more information, see the "Using an Object that Implements IDisposable" section in the IDisposable interface topic.

Vlákno je cesta provádění prostřednictvím programu.A thread is a path of execution through a program. Je to nejmenší jednotka provádění těchto plánů Win32.It is the smallest unit of execution that Win32 schedules. Skládá se ze zásobníku, stavu registrů CPU a záznamu v seznamu spuštění plánovače systému.It consists of a stack, the state of the CPU registers, and an entry in the execution list of the system scheduler.

Proces se skládá z jednoho nebo více vláken a kódu, dat a dalších prostředků programu v paměti.A process consists of one or more threads and the code, data, and other resources of a program in memory. Typickými prostředky programu jsou otevřené soubory, semafory a dynamicky přidělená paměť.Typical program resources are open files, semaphores, and dynamically allocated memory. Každý prostředek procesu je sdílen všemi vlákny tohoto procesu.Each resource of a process is shared by all that process's threads.

Program se spustí, když Plánovač systému poskytne řízení provádění jednomu z vláken programu.A program executes when the system scheduler gives execution control to one of the program's threads. Plánovač určuje, která vlákna by se měla spustit a kdy.The scheduler determines which threads should run and when. Vlákno s nižší prioritou může být nuceně čekat, zatímco vlákna s vyšší prioritou dokončí jejich úkoly.A lower-priority thread might be forced to wait while higher-priority threads complete their tasks. V počítačích s více procesory může plánovač přesunout jednotlivá vlákna do různých procesorů, čímž se vyrovnává zatížení procesoru.On multiprocessor computers, the scheduler can move individual threads to different processors, thus balancing the CPU load.

Každý proces začíná jediným vláknem, který je označován jako primární vlákno.Each process starts with a single thread, which is known as the primary thread. Jakékoli vlákno může vytvořit další vlákna.Any thread can create additional threads. Všechna vlákna v rámci procesu sdílí adresní prostor tohoto procesu.All the threads within a process share the address space of that process.

Primární vlákno není nutně umístěno na prvním indexu v kolekci.The primary thread is not necessarily located at the first index in the collection.

Poznámka

Počínaje verzí 2,0 .NET Framework byla pro mnoho metod .NET Framework a vlastností eliminována možnost referenčních dat čítače výkonu na jiných počítačích.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. Tato změna byla provedena za účelem zvýšení výkonu a povolení použití třídy bez oprávnění správce ProcessThread .This change was made to improve performance and to enable non-administrators to use the ProcessThread class. V důsledku toho mohou teď některé aplikace, které neobdržely výjimky v předchozích verzích .NET Framework, získat NotSupportedException .As a result, some applications that did not get exceptions in earlier versions of the .NET Framework may now get a NotSupportedException. Ovlivněné metody a vlastnosti jsou příliš mnoho, než je zde uveden seznam, ale informace o výjimce byly přidány do ovlivněných členských témat.The methods and properties affected are too numerous to list here, but the exception information has been added to the affected member topics.

Vlákna procesu se spouštějí jednotlivě a vzájemně si nevědí, pokud je nevidíte vzájemně.The threads of a process execute individually and are unaware of each other unless you make them visible to each other. Vlákna, která sdílejí společné prostředky, však musí koordinovat svou práci pomocí semaforů nebo jiné metody komunikace mezi procesy.Threads that share common resources, however, must coordinate their work by using semaphores or another method of interprocess communication.

Chcete-li získat kolekci všech ProcessThread objektů přidružených k aktuálnímu procesu, Získejte Threads vlastnost Process instance.To get a collection of all the ProcessThread objects associated with the current process, get the Threads property of the Process instance.

Vlastnosti

BasePriority

Získá základní prioritu vlákna.Gets the base priority of the thread.

CanRaiseEvents

Získá hodnotu, která označuje, zda může komponenta vyvolat událost.Gets a value indicating whether the component can raise an event.

(Zděděno od Component)
Container

Získá IContainer , který obsahuje Component .Gets the IContainer that contains the Component.

(Zděděno od Component)
CurrentPriority

Získá aktuální prioritu vlákna.Gets the current priority of the thread.

DesignMode

Načte hodnotu, která označuje, zda Component je aktuálně v režimu návrhu.Gets a value that indicates whether the Component is currently in design mode.

(Zděděno od Component)
Events

Získá seznam obslužných rutin událostí, které jsou k tomuto typu připojeny Component .Gets the list of event handlers that are attached to this Component.

(Zděděno od Component)
Id

Získá jedinečný identifikátor vlákna.Gets the unique identifier of the thread.

IdealProcessor

Nastaví preferovaný procesor, na kterém má být vlákno spuštěno.Sets the preferred processor for this thread to run on.

PriorityBoostEnabled

Získává nebo nastavuje hodnotu, která označuje, jestli má operační systém dočasně zvýšit prioritu přidruženého vlákna vždy, když se v hlavním okně procesu vlákna dostane fokus.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

Získá nebo nastaví úroveň priority vlákna.Gets or sets the priority level of the thread.

PrivilegedProcessorTime

Získá dobu, po kterou vlákno strávilo spouštění kódu v jádru operačního systému.Gets the amount of time that the thread has spent running code inside the operating system core.

ProcessorAffinity

Nastaví procesory, na kterých je možné spustit přidružené vlákno.Sets the processors on which the associated thread can run.

Site

Získá nebo nastaví ISite z Component .Gets or sets the ISite of the Component.

(Zděděno od Component)
StartAddress

Získá adresu paměti funkce, která je volána operačním systémem, který spustil toto vlákno.Gets the memory address of the function that the operating system called that started this thread.

StartTime

Získá čas, kdy operační systém spustil vlákno.Gets the time that the operating system started the thread.

ThreadState

Načte aktuální stav tohoto vlákna.Gets the current state of this thread.

TotalProcessorTime

Získá celkovou dobu, kterou toto vlákno strávilo pomocí procesoru.Gets the total amount of time that this thread has spent using the processor.

UserProcessorTime

Získá množství času, který přidružené vlákno strávilo spuštěním kódu v aplikaci.Gets the amount of time that the associated thread has spent running code inside the application.

WaitReason

Získá důvod, proč vlákno čeká.Gets the reason that the thread is waiting.

Metody

CreateObjRef(Type)

Vytvoří objekt, který obsahuje všechny relevantní informace požadované pro vygenerování proxy serveru, který se používá ke komunikaci se vzdáleným objektem.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Zděděno od MarshalByRefObject)
Dispose()

Uvolní všechny prostředky, které používá Component .Releases all resources used by the Component.

(Zděděno od Component)
Dispose(Boolean)

Uvolní nespravované prostředky používané Component a volitelně uvolňuje spravované prostředky.Releases the unmanaged resources used by the Component and optionally releases the managed resources.

(Zděděno od Component)
Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.Determines whether the specified object is equal to the current object.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí funkce hash.Serves as the default hash function.

(Zděděno od Object)
GetLifetimeService()
Zastaralé.

Načte aktuální objekt služby životnosti, který řídí zásady životního cyklu pro tuto instanci.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Zděděno od MarshalByRefObject)
GetService(Type)

Vrátí objekt, který představuje službu poskytnutou Component nebo podle jeho Container .Returns an object that represents a service provided by the Component or by its Container.

(Zděděno od Component)
GetType()

Získá Type aktuální instanci.Gets the Type of the current instance.

(Zděděno od Object)
InitializeLifetimeService()
Zastaralé.

Získá objekt služby životnosti, který řídí zásady životního cyklu pro tuto instanci.Obtains a lifetime service object to control the lifetime policy for this instance.

(Zděděno od MarshalByRefObject)
MemberwiseClone()

Vytvoří kopii aktuálního seznamu Object .Creates a shallow copy of the current Object.

(Zděděno od Object)
MemberwiseClone(Boolean)

Vytvoří kopii aktuálního objektu bez podstruktury MarshalByRefObject .Creates a shallow copy of the current MarshalByRefObject object.

(Zděděno od MarshalByRefObject)
ResetIdealProcessor()

Resetuje ideální procesor pro toto vlákno, aby označoval, že není k dispozici jeden ideální procesor.Resets the ideal processor for this thread to indicate that there is no single ideal processor. Jinými slovy, aby jakýkoli procesor byl ideální.In other words, so that any processor is ideal.

ToString()

Vrátí hodnotu String obsahující název Component , pokud existuje.Returns a String containing the name of the Component, if any. Tato metoda by neměla být přepsána.This method should not be overridden.

(Zděděno od Component)
ToString()

Vrátí řetězec, který představuje aktuální objekt.Returns a string that represents the current object.

(Zděděno od Object)

Události

Disposed

Nastane, pokud je komponenta uvolněna voláním Dispose() metody.Occurs when the component is disposed by a call to the Dispose() method.

(Zděděno od Component)

Platí pro

Viz také