ProcessThread クラス

定義

オペレーティング システムのプロセス スレッドを表します。

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 レジスタの状態、およびシステム スケジューラの実行リスト内のエントリで構成されます。

プロセスは、1 つまたは複数のスレッドと、メモリ内のプログラムのコード、データ、およびその他のリソースで構成されます。 一般的なプログラム リソースは、開いているファイル、セマフォ、および動的に割り当てられたメモリです。 プロセスの各リソースは、そのすべてのプロセスのスレッドによって共有されます。

プログラムは、システム スケジューラがプログラムのスレッドの 1 つに実行制御を与えたときに実行されます。 スケジューラは、実行するスレッドとタイミングを決定します。 優先度の低いスレッドは、優先度の高いスレッドがタスクを完了している間、強制的に待機する可能性があります。 マルチプロセッサ コンピューターでは、スケジューラは個々のスレッドを異なるプロセッサに移動し、CPU 負荷のバランスを取ることができます。

各プロセスは、プライマリ スレッドと呼ばれる 1 つのスレッドで始まります。 どのスレッドでも新しいスレッドを作成できます。 プロセス内のすべてのスレッドは、そのプロセスのアドレス空間を共有します。

プライマリ スレッドは、必ずしもコレクション内の最初のインデックスにあるとは限りません。

Note

.NET Framework バージョン 2.0 以降では、他のコンピューターのパフォーマンス カウンター データを参照する機能は、.NET Frameworkメソッドとプロパティの多くでなくなりました。 この変更は、パフォーマンスを向上させ、管理者以外のユーザーが クラスを使用 ProcessThread できるようにするために行われました。 その結果、以前のバージョンの.NET Frameworkで例外を取得しなかった一部のアプリケーションでは、 NotSupportedExceptionが取得される可能性があります。 影響を受けるメソッドとプロパティが多すぎてここに一覧表示されませんが、影響を受けるメンバー トピックに例外情報が追加されています。

プロセスのスレッドは個別に実行され、相互に認識されない限り、相互に認識されません。 ただし、共通リソースを共有するスレッドは、セマフォまたはプロセス間通信の別の方法を使用して作業を調整する必要があります。

現在のプロセスに関連付けられているすべてのオブジェクトのProcessThreadコレクションを取得するには、 インスタンスの プロパティをProcess取得Threadsします。

プロパティ

BasePriority

スレッドの基本優先順位を取得します。

CanRaiseEvents

コンポーネントがイベントを発生させることがきるかどうかを示す値を取得します。

(継承元 Component)
Container

IContainer を含む Component を取得します。

(継承元 Component)
CurrentPriority

スレッドの現在の優先順位を取得します。

DesignMode

Component が現在デザイン モードかどうかを示す値を取得します。

(継承元 Component)
Events

Component に結び付けられているイベント ハンドラーのリストを取得します。

(継承元 Component)
Id

スレッドの一意な識別子を取得します。

IdealProcessor

このスレッドを実行する優先プロセッサを設定します。

PriorityBoostEnabled

スレッドのプロセスのメイン ウィンドウがフォーカスを受け取るたびに、関連付けられたスレッドの優先順位をオペレーティング システムが一時的に上げるかどうかを示す値を取得または設定します。

PriorityLevel

スレッドの優先順位を取得または設定します。

PrivilegedProcessorTime

スレッドが、オペレーティング システム コアでコードを実行した時間を取得します。

ProcessorAffinity

関連付けられたスレッドを実行できるプロセッサを設定します。

Site

ComponentISite を取得または設定します。

(継承元 Component)
StartAddress

このスレッドを起動するときにオペレーティング システムが呼び出した関数のメモリ アドレスを取得します。

StartTime

オペレーティング システムによってスレッドを起動した時刻を取得します。

ThreadState

このスレッドの現在の状態を取得します。

TotalProcessorTime

このスレッドがプロセッサを使用した時間の合計を取得します。

UserProcessorTime

関連付けられたスレッドが、アプリケーションでコードを実行した時間を取得します。

WaitReason

スレッドが待機している理由を取得します。

メソッド

CreateObjRef(Type)

リモート オブジェクトとの通信に使用するプロキシの生成に必要な情報をすべて格納しているオブジェクトを作成します。

(継承元 MarshalByRefObject)
Dispose()

Component によって使用されているすべてのリソースを解放します。

(継承元 Component)
Dispose(Boolean)

Component によって使用されているアンマネージド リソースを解放し、オプションでマネージド リソースも解放します。

(継承元 Component)
Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetLifetimeService()
古い.

対象のインスタンスの有効期間ポリシーを制御する、現在の有効期間サービス オブジェクトを取得します。

(継承元 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)

適用対象

こちらもご覧ください