ProcessThread 類別

定義

表示作業系統處理序 (Process) 執行緒。

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
繼承
繼承
ProcessThread

備註

使用 ProcessThread 來取得目前在系統上執行的執行緒相關資訊。 例如,這樣做可讓您監視執行緒的效能特性。

重要

此型別代表 IDisposable 介面。 當您完成使用型別時,您應該直接或間接處置它。 若要直接處置型別,請呼叫其 try/catch 區塊中的 Dispose 方法。 若要間接處置它,請使用語言建構函式,例如 using (在 C# 中) 或 Using (在 Visual Basic 中)。 如需詳細資訊,請參閱 IDisposable 介面文章中的<使用實作 IDisposable 的物件>一節。

執行緒是透過程式執行的路徑。 這是 Win32 排程的最小執行單位。 它包含堆疊、CPU 暫存器的狀態,以及系統排程器執行清單中的專案。

進程包含一或多個執行緒,以及記憶體中程式的程式碼、資料和其他資源。 一般程式資源是開啟的檔案、旗號,以及動態配置的記憶體。 進程的每個資源都會由該進程的所有線程共用。

當系統排程器將執行控制權提供給其中一個程式的執行緒時,程式就會執行。 排程器會決定哪些執行緒應該執行,以及何時執行。 優先順序較低的執行緒可能會在較高優先順序的執行緒完成其工作時強制等候。 在多處理器電腦上,排程器可以將個別執行緒移至不同的處理器,進而平衡 CPU 負載。

每個進程都會以單一線程開頭,稱為主要執行緒。 任何執行緒都可以建立其他執行緒。 進程內的所有線程都會共用該進程的位址空間。

主要執行緒不一定位於集合中的第一個索引處。

注意

從 .NET Framework 2.0 版開始,已針對許多.NET Framework方法和屬性排除參考其他電腦上的效能計數器資料。 這項變更是為了改善效能,並讓非系統管理員能夠使用 類別 ProcessThread 。 因此,某些在舊版.NET Framework中未取得例外狀況的應用程式現在可能會取得 NotSupportedException 。 受影響的方法和屬性太多而無法在這裡列出,但例外狀況資訊已新增至受影響的成員主題。

進程執行緒會個別執行,除非您讓彼此看見它們,否則不會彼此察覺。 不過,共用通用資源的執行緒必須使用旗號或其他處理序間通訊方法來協調其工作。

若要取得與目前進程相關聯的所有 ProcessThread 物件集合,請取得 Threads 實例的 Process 屬性。

屬性

BasePriority

取得執行緒的基礎優先權 (Base Priority)。

CanRaiseEvents

取得值,指出元件是否能引發事件。

(繼承來源 Component)
Container

取得包含 IContainerComponent

(繼承來源 Component)
CurrentPriority

取得執行緒的目前優先權。

DesignMode

取得值,指出 Component 目前是否處於設計模式。

(繼承來源 Component)
Events

取得附加在這個 Component 上的事件處理常式清單。

(繼承來源 Component)
Id

取得執行緒的唯一識別項。

IdealProcessor

設定執行這個執行緒的慣用處理器。

PriorityBoostEnabled

取得或設定數值,表示每當執行緒的處理序之主視窗接收到焦點 (Focus) 時,作業系統是否應該暫時提高相關執行緒的優先權。

PriorityLevel

取得或設定執行緒的優先權層級。

PrivilegedProcessorTime

取得執行緒在作業系統核心中執行程式碼所耗用的時間量。

ProcessorAffinity

設定可以執行相關執行緒的處理器。

Site

取得或設定 ComponentISite

(繼承來源 Component)
StartAddress

取得作業系統啟動這個執行緒所呼叫之函式的記憶體位址。

StartTime

取得作業系統啟動執行緒的時間。

ThreadState

取得這個執行緒目前的狀態。

TotalProcessorTime

取得這個執行緒使用處理器所耗用的總時間量。

UserProcessorTime

取得相關執行緒在應用程式內部執行程式碼所耗用的時間量。

WaitReason

取得執行緒正在等候的原因。

方法

CreateObjRef(Type)

建立包含所有相關資訊的物件,這些資訊是產生用來與遠端物件通訊的所需 Proxy。

(繼承來源 MarshalByRefObject)
Dispose()

釋放 Component 所使用的所有資源。

(繼承來源 Component)
Dispose(Boolean)

釋放 Component 所使用的 Unmanaged 資源,並選擇性地釋放 Managed 資源。

(繼承來源 Component)
Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetLifetimeService()
已淘汰.

擷取控制這個執行個體存留期 (Lifetime) 原則的目前存留期服務物件。

(繼承來源 MarshalByRefObject)
GetService(Type)

傳回表示 Component 或其 Container 所提供之服務的物件。

(繼承來源 Component)
GetType()

取得目前執行個體的 Type

(繼承來源 Object)
InitializeLifetimeService()
已淘汰.

取得存留期服務物件,以控制這個執行個體的存留期原則。

(繼承來源 MarshalByRefObject)
MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
MemberwiseClone(Boolean)

建立目前 MarshalByRefObject 物件的淺層複本。

(繼承來源 MarshalByRefObject)
ResetIdealProcessor()

重設這個執行緒的理想處理器,以指示沒有一個的理想處理器。 換句話說,沒有任何處理器是理想的。

ToString()

傳回任何包含 Component 名稱的 String。 不應覆寫此方法。

(繼承來源 Component)
ToString()

傳回代表目前物件的字串。

(繼承來源 Object)

事件

Disposed

Dispose() 方法的呼叫處置元件時,就會發生。

(繼承來源 Component)

適用於

另請參閱