Monitor クラス

定義

オブジェクトへのアクセスを同期するメカニズムを提供します。

public ref class Monitor abstract sealed
public ref class Monitor sealed
public static class Monitor
public sealed class Monitor
[System.Runtime.InteropServices.ComVisible(true)]
public static class Monitor
type Monitor = class
[<System.Runtime.InteropServices.ComVisible(true)>]
type Monitor = class
Public Class Monitor
Public NotInheritable Class Monitor
継承
Monitor
属性

注釈

この API の詳細については、「 Monitor の補足 API 解説」を参照してください。

プロパティ

名前 説明
LockContentionCount

モニターのロックを取得しようとしたときに競合が発生した回数を取得します。

メソッド

名前 説明
Enter(Object, Boolean)

指定したオブジェクトの排他ロックを取得し、ロックが取得されたかどうかを示す値をアトミックに設定します。

Enter(Object)

指定したオブジェクトの排他ロックを取得します。

Exit(Object)

指定したオブジェクトの排他ロックを解放します。

IsEntered(Object)

現在のスレッドが、指定したオブジェクトのロックを保持するかどうかを決定します。

Pulse(Object)

ロックされたオブジェクトの状態の変更を待機中のキュー内のスレッドに通知します。

PulseAll(Object)

オブジェクトの状態の変更を待機しているすべてのスレッドに通知します。

TryEnter(Object, Boolean)

指定したオブジェクトの排他ロックの取得を試み、ロックが取得されたかどうかを示す値をアトミックに設定します。

TryEnter(Object, Int32, Boolean)

指定したミリ秒単位で、指定したオブジェクトに対する排他ロックの取得を試行し、ロックが取得されたかどうかを示す値をアトミックに設定します。

TryEnter(Object, Int32)

指定したオブジェクトに対する排他ロックの取得を、指定したミリ秒単位で試行します。

TryEnter(Object, TimeSpan, Boolean)

指定したオブジェクトの排他ロックの取得を指定した時間試行し、ロックが取得されたかどうかを示す値をアトミックに設定します。

TryEnter(Object, TimeSpan)

指定したオブジェクトに対する排他ロックの取得を、指定した時間試行します。

TryEnter(Object)

指定したオブジェクトの排他ロックの取得を試みます。

Wait(Object, Int32, Boolean)

オブジェクトのロックを解放し、ロックを再取得するまで現在のスレッドをブロックします。 指定したタイムアウト間隔が経過すると、スレッドは準備完了キューに入ります。 また、このメソッドは、待機の前にコンテキストの同期ドメイン (同期されたコンテキスト内にある場合) を終了し、後で再取得するかどうかを指定します。

Wait(Object, Int32)

オブジェクトのロックを解放し、ロックを再取得するまで現在のスレッドをブロックします。 指定したタイムアウト間隔が経過すると、スレッドは準備完了キューに入ります。

Wait(Object, TimeSpan, Boolean)

オブジェクトのロックを解放し、ロックを再取得するまで現在のスレッドをブロックします。 指定したタイムアウト間隔が経過すると、スレッドは準備完了キューに入ります。 必要に応じて、待機する前に同期コンテキストの同期ドメインを終了し、後でドメインを再取得します。

Wait(Object, TimeSpan)

オブジェクトのロックを解放し、ロックを再取得するまで現在のスレッドをブロックします。 指定したタイムアウト間隔が経過すると、スレッドは準備完了キューに入ります。

Wait(Object)

オブジェクトのロックを解放し、ロックを再取得するまで現在のスレッドをブロックします。

適用対象

スレッド セーフ

この型はスレッド セーフです。

こちらもご覧ください