ProcessThread クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
オペレーティング システムのプロセス スレッドを表します。
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 つのスレッドで始まります。 どのスレッドでも新しいスレッドを作成できます。 プロセス内のすべてのスレッドは、そのプロセスのアドレス空間を共有します。
プライマリ スレッドは、必ずしもコレクション内の最初のインデックスにあるとは限りません。
注意
.NET Framework バージョン 2.0 以降では、.NET Frameworkメソッドとプロパティの多くで、他のコンピューター上のパフォーマンス カウンター データを参照する機能が排除されました。 この変更は、パフォーマンスを向上させ、管理者以外のユーザーが クラスを使用できるようにするために ProcessThread 行われました。 その結果、以前のバージョンの.NET Frameworkで例外を取得しなかった一部のアプリケーションでは、 NotSupportedExceptionが取得される可能性があります。 影響を受けるメソッドとプロパティが多すぎてここに一覧表示されませんが、影響を受けるメンバー トピックに例外情報が追加されています。
プロセスのスレッドは個別に実行され、相互に表示されない限り、相互に認識されません。 ただし、共通リソースを共有するスレッドは、セマフォまたは別のプロセス間通信方法を使用して作業を調整する必要があります。
現在のプロセスに関連付けられているすべてのオブジェクトのProcessThreadコレクションを取得するには、 インスタンスの プロパティをThreadsProcess取得します。
プロパティ
BasePriority |
スレッドの基本優先順位を取得します。 |
CanRaiseEvents |
コンポーネントがイベントを発生させることがきるかどうかを示す値を取得します。 (継承元 Component) |
Container |
IContainer を含む Component を取得します。 (継承元 Component) |
CurrentPriority |
スレッドの現在の優先順位を取得します。 |
DesignMode |
Component が現在デザイン モードかどうかを示す値を取得します。 (継承元 Component) |
Events |
Component に結び付けられているイベント ハンドラーのリストを取得します。 (継承元 Component) |
Id |
スレッドの一意な識別子を取得します。 |
IdealProcessor |
このスレッドを実行する優先プロセッサを設定します。 |
PriorityBoostEnabled |
スレッドのプロセスのメイン ウィンドウがフォーカスを受け取るたびに、関連付けられたスレッドの優先順位をオペレーティング システムが一時的に上げるかどうかを示す値を取得または設定します。 |
PriorityLevel |
スレッドの優先順位を取得または設定します。 |
PrivilegedProcessorTime |
スレッドが、オペレーティング システム コアでコードを実行した時間を取得します。 |
ProcessorAffinity |
関連付けられたスレッドを実行できるプロセッサを設定します。 |
Site |
Component の ISite を取得または設定します。 (継承元 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) |
適用対象
こちらもご覧ください
.NET