Monitor.TryEnter メソッド (Object, TimeSpan)
指定した時間内に、指定したオブジェクトの排他ロックの取得を試みます。
Overloads Public Shared Function TryEnter( _
ByVal obj As Object, _ ByVal timeout As TimeSpan _) As Boolean
[C#]
public static bool TryEnter(objectobj,TimeSpantimeout);
[C++]
public: static bool TryEnter(Object* obj,TimeSpantimeout);
[JScript]
public static function TryEnter(
obj : Object,timeout : TimeSpan) : Boolean;
パラメータ
- obj
ロックの取得が行われるオブジェクト。 - timeout
ロックを待機する時間を表す TimeSpan 。
戻り値
現在のスレッドがブロックせずにロックを取得した場合は true 。それ以外の場合は false 。
例外
例外の種類 | 条件 |
---|---|
ArgumentNullException | obj パラメータが null 参照 (Visual Basic では Nothing) です。 |
ArgumentException | obj パラメータが値型です。 |
ArgumentOutOfRangeException | timeout の値 (ミリ秒) が負で、 Infinite と等価でありません。または MaxValue より大きい値です。 |
解説
ミリ秒に変換された timeout パラメータの値が Infinite と等しい場合、このメソッドは Enter と等価になります。 timeout の値が 0 の場合、このメソッドは TryEnter(Object) と等価になります。
メモ 値型ではなく、オブジェクト (つまり参照型) をロックするには Monitor を使用します。詳細については、「 Enter 」および概念に関するトピック「 Monitor 」を参照してください。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, Common Language Infrastructure (CLI) Standard
参照
Monitor クラス | Monitor メンバ | System.Threading 名前空間 | Monitor.TryEnter オーバーロードの一覧 | Thread | スレッド処理 | Monitor