System.Threading 名前空間
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
マルチスレッド プログラミングを実現するクラスとインターフェイスが用意されています。 この名前空間には、スレッドの動作やデータへのアクセスを同期するためのクラス (Mutex、Monitor、Interlocked、AutoResetEvent など) のほか、システムが提供するスレッド プールを使用するための ThreadPool クラス、スレッド プール スレッドでコールバック メソッドを実行するための Timer クラスも用意されています。
クラス
AbandonedMutexException |
スレッドが、別のスレッドが解放せずに終了することによって放棄した Mutex オブジェクトを取得したときにスローされる例外。 |
AsyncLocal<T> |
非同期メソッドなど、特定の非同期制御フローに対してローカルなアンビエント データを表します。 |
AutoResetEvent |
通知されると 1 つの待機スレッドを解放し、自動的にリセットするスレッド同期イベントを表します。 このクラスは継承できません。 |
Barrier |
複数のタスクが、複数のフェーズを通じて 1 つのアルゴリズムで並行して協調的に実行できるようにします。 |
BarrierPostPhaseException |
Barrier のフェーズ後アクションに失敗したときにスローされる例外。 |
CancellationTokenSource |
取り消す必要があることを CancellationToken に通知します。 |
CompressedStack |
現在のスレッドで圧縮スタックの設定とキャプチャを行うメソッドを提供します。 このクラスは継承できません。 |
CountdownEvent |
カウントが 0 になったときに通知される同期プリミティブを表します。 |
EventWaitHandle |
スレッドの同期イベントを表します。 |
EventWaitHandleAcl |
特定のアクセス制御リスト (ACL) セキュリティを使用して EventWaitHandle オブジェクトを作成するための、Windows 固有の拡張メソッドを提供します。 |
ExecutionContext |
現在のスレッドの実行コンテキストを管理します。 このクラスは継承できません。 |
HostExecutionContext |
スレッド間でホストの実行コンテキストをカプセル化して反映させます。 |
HostExecutionContextManager |
共通言語ランタイム ホストが実行コンテキストのフロー (移行) に参加するための機能を提供します。 |
Interlocked |
複数のスレッドで共有される変数に分割不可能な操作を提供します。 |
LazyInitializer |
遅延初期化ルーチンを提供します。 |
Lock |
異なるスレッド間のコード領域で相互除外を実現するためのメカニズムを提供します。 |
LockRecursionException |
再帰的にロックに入る処理が、ロックの再帰ポリシーと互換性がない場合にスローされる例外。 |
ManualResetEvent |
通知時に手動でリセットする必要のあるスレッド同期イベントを表します。 このクラスは継承できません。 |
ManualResetEventSlim |
通知時に手動でリセットする必要のあるスレッド同期イベントを表します。 このクラスは ManualResetEvent の軽量版です。 |
Monitor |
オブジェクトへのアクセスを同期する機構を提供します。 |
Mutex |
同期プリミティブは、プロセス間の同期にも使用できます。 |
MutexAcl |
特定のアクセス制御リスト (ACL) セキュリティを使用して Mutex オブジェクトを作成するための、Windows 固有の拡張メソッドを提供します。 |
Overlapped |
Overlapped インスタンスから NativeOverlapped 構造体への情報を転送するメソッドを含む、Win32 |
PeriodicTimer |
タイマー ティックを非同期的に待機できるようにする定期的なタイマーを提供します。 |
PreAllocatedOverlapped |
ネイティブの重複 I/O 操作に事前に割り当てられている状態を表します。 |
ReaderWriterLock |
単一ライターと複数リーダーをサポートするロックを定義します。 |
ReaderWriterLockSlim |
リソースへのアクセス管理に使用するロックを表し、複数のスレッドによる読み取りや排他アクセスでの書き込みを実現します。 |
RegisteredWaitHandle |
RegisterWaitForSingleObject(WaitHandle, WaitOrTimerCallback, Object, UInt32, Boolean) を呼び出すときに登録されたハンドルを表します。 このクラスは継承できません。 |
Semaphore |
リソースまたはリソースのプールに同時にアクセスできるスレッドの数を制限します。 |
SemaphoreAcl |
特定のアクセス制御リスト (ACL) セキュリティを使用して Semaphore オブジェクトを作成するための、Windows 固有の拡張メソッドを提供します。 |
SemaphoreFullException |
カウントが最大値に達しているセマフォで、Release メソッドが呼び出された場合にスローされる例外。 |
SemaphoreSlim |
リソースまたはリソースのプールに同時にアクセスできるスレッドの数を制限する Semaphore の軽量版を表します。 |
SynchronizationContext |
同期コンテキストをさまざまな同期モデルに反映するための基本機能を提供します。 |
SynchronizationLockException |
指定した Monitor でロックを所有していることが呼び出し元の条件となるメソッドを、そのロックを所有していない呼び出し元が呼び出した場合にスローされる例外。 |
Thread |
スレッドを作成および制御し、その優先順位の設定およびステータスの取得を実行します。 |
ThreadAbortException |
Abort(Object) メソッドが呼び出されるときにスローされる例外。 このクラスは継承できません。 |
ThreadExceptionEventArgs |
ThreadException イベントのデータを提供します。 |
ThreadingAclExtensions |
EventWaitHandle、Mutex、および Semaphore のアクセス制御リスト (ACL) セキュリティ記述子を管理するための、Windows 固有の拡張メソッドを提供します。 |
ThreadInterruptedException |
Thread が待機状態のときに中断されるとスローされる例外。 |
ThreadLocal<T> |
データのスレッド ローカル ストレージを提供します。 |
ThreadPool |
タスクの実行、作業項目のポスト、非同期 I/O の処理、他のスレッドの代理で行う待機、およびタイマーの処理に使用できるスレッドのプールを提供します。 |
ThreadPoolBoundHandle |
システムのスレッド プールにバインドし、低レベルのコンポーネントが非同期 I/O 操作の通知を受信できるようにする I/O ハンドルを表します。 |
ThreadStartException |
基になるオペレーティング システムのスレッドが起動された後、スレッドでユーザー コードを実行する準備が完了する前にマネージド スレッドでエラーが発生したときにスローされる例外。 |
ThreadStateException |
メソッドの呼び出しで Thread が無効な ThreadState である場合は、例外がスローされます。 |
Timeout |
無限タイムアウト間隔を指定する定数を格納します。 このクラスは継承できません。 |
Timer |
指定した間隔で、スレッド プール スレッドでメソッドを実行するための機構を提供します。 このクラスは継承できません。 |
Volatile |
揮発性メモリの操作を実行するためのメソッドを格納します。 |
WaitHandle |
共有リソースへの排他アクセスの待機に使用するオペレーティング システム固有のオブジェクトをカプセル化します。 |
WaitHandleCannotBeOpenedException |
この例外は、存在しないシステムのミューテックス、セマフォ、またはイベント待機ハンドルを開こうとした場合にスローされます。 |
WaitHandleExtensions |
待機ハンドルのセーフ ハンドルを処理するための便利なメソッドを提供します。 |
構造体
AsyncFlowControl |
スレッド間の実行コンテキストの移行 (フロー) を復元する機能を提供します。 |
AsyncLocalValueChangedArgs<T> |
変更通知のために登録する AsyncLocal<T> インスタンスに対するデータ変更情報を提供するクラス。 |
CancellationToken |
操作を取り消す通知を配信します。 |
CancellationTokenRegistration |
CancellationToken に登録されているコールバック デリゲートを表します。 |
Lock.Scope |
入力された可能性がある を Lock 表します。 |
LockCookie |
単一ライター セマンティクスと複数リーダー セマンティクスを実装するロックを定義します。 これは値型です。 |
NativeOverlapped |
アンマネージ コードから見えていて、OVERLAPPED 構造体の末尾にいくつかの予約フィールドを付加したものと同じレイアウトになる明示的レイアウトを提供します。 |
SpinLock |
ロックが使用可能になるまで繰り返しチェックするループ内で、ロックを取得しようとするスレッドが待機する相互排他ロック プリミティブを提供します。 |
SpinWait |
スピンベースの待機のサポートを提供します。 |
インターフェイス
IThreadPoolWorkItem |
ThreadPool で実行できる作業項目を表します。 |
ITimer |
期限と期間を変更できるタイマーを表します。 |
列挙型
ApartmentState |
Thread のアパートメント状態を指定します。 |
EventResetMode |
シグナルを受信した後で EventWaitHandle が自動的にリセットされるか、または手動でリセットされるかを示します。 |
LazyThreadSafetyMode |
Lazy<T> インスタンスが複数のスレッド間でアクセスを同期する方法を指定します。 |
LockRecursionPolicy |
同じスレッドが複数回ロックに入ることができるかどうかを指定します。 |
ThreadPriority |
Thread のスケジューリング優先順位を指定します。 |
ThreadState |
Thread の実行状態を指定します。 |
代理人
ContextCallback |
新しいコンテキスト内で呼び出されるメソッドを表します。 |
IOCompletionCallback |
I/O 操作がスレッド プールで完了すると、エラー コード、バイト数、および重複値型を受け取ります。 |
ParameterizedThreadStart |
Thread で実行するメソッドを表します。 |
SendOrPostCallback |
メッセージを同期コンテキストにディスパッチするときに呼び出すメソッドを表します。 |
ThreadExceptionEventHandler |
Application の ThreadException イベントを処理するメソッドを表します。 |
ThreadStart |
Thread で実行するメソッドを表します。 |
TimerCallback |
Timer からの呼び出しを処理するメソッドを表します。 |
WaitCallback |
スレッド プール スレッドが実行するコールバック メソッドを表します。 |
WaitOrTimerCallback |
WaitHandle がシグナル通知されたとき、またはタイムアウトしたときに呼び出されるメソッドを表します。 |
.NET