ReaderWriterLockSlim.TryEnterReadLock メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
読み取りモードで、オプションのタイムアウトでロックを開始しようとします。
オーバーロード
| 名前 | 説明 |
|---|---|
| TryEnterReadLock(Int32) |
オプションの整数タイムアウトを使用して、読み取りモードでロックを開始しようとします。 |
| TryEnterReadLock(TimeSpan) |
読み取りモードで、オプションのタイムアウトでロックを開始しようとします。 |
TryEnterReadLock(Int32)
オプションの整数タイムアウトを使用して、読み取りモードでロックを開始しようとします。
public:
bool TryEnterReadLock(int millisecondsTimeout);
public bool TryEnterReadLock(int millisecondsTimeout);
member this.TryEnterReadLock : int -> bool
Public Function TryEnterReadLock (millisecondsTimeout As Integer) As Boolean
パラメーター
返品
true 呼び出し元のスレッドが読み取りモードに入った場合は false。
例外
RecursionPolicy プロパティがNoRecursionされ、現在のスレッドが既にロックに入っています。
-または-
再帰数がカウンターの容量を超えます。 この制限は非常に大きいため、アプリケーションで発生することはありません。
millisecondsTimeoutの値は負の値ですが、Infinite (-1) と等しくありません。これは、許容される唯一の負の値です。
ReaderWriterLockSlim オブジェクトが破棄されました。
注釈
millisecondsTimeoutが 0 (ゼロ) の場合、このメソッドはロック状態を確認し、目的の状態が使用できない場合は直ちにfalseを返します。
複数のスレッドが同時に読み取りモードに入ることができます。
1 つ以上のスレッドが書き込みモードの開始を待機している場合、 TryEnterReadLock メソッドを呼び出すスレッドは、それらのスレッドがタイムアウトするか、書き込みモードに入ってから終了するか、呼び出し元のスレッドのタイムアウト間隔が切れるまでブロックします。
Note
ロックで再帰が許可されている場合、読み取りモードでロックに入ったスレッドは、他のスレッドが書き込みモードに入るのを待機している場合でも、再帰的に読み取りモードに入ることができます。
1 つのスレッドはアップグレード可能モードで、他のスレッドは読み取りモードにすることができます。 追加のスレッドがアップグレード可能モードに入るのを待機していて、書き込みモードに入るのを待機しているスレッドがない場合、 TryEnterReadLock メソッドを呼び出すスレッドは直ちに読み取りモードに入り、ブロックしません。
適用対象
TryEnterReadLock(TimeSpan)
読み取りモードで、オプションのタイムアウトでロックを開始しようとします。
public:
bool TryEnterReadLock(TimeSpan timeout);
public bool TryEnterReadLock(TimeSpan timeout);
member this.TryEnterReadLock : TimeSpan -> bool
Public Function TryEnterReadLock (timeout As TimeSpan) As Boolean
パラメーター
- timeout
- TimeSpan
待機する間隔、または無期限に待機する -1 ミリ秒。
返品
true 呼び出し元のスレッドが読み取りモードに入った場合は false。
例外
RecursionPolicy プロパティがNoRecursionされ、現在のスレッドが既にロックに入っています。
-または-
再帰数がカウンターの容量を超えます。 この制限は非常に大きいため、アプリケーションで発生することはありません。
ReaderWriterLockSlim オブジェクトが破棄されました。
注釈
timeoutが 0 (ゼロ) の場合、このメソッドはロック状態を確認し、目的の状態が使用できない場合は直ちにfalseを返します。
複数のスレッドが同時に読み取りモードでロックに入ることができます。
1 つ以上のスレッドが書き込みモードに入るためにキューに入っている場合、 TryEnterReadLock メソッドを呼び出すスレッドは、それらのスレッドがタイムアウトするか、書き込みモードに入ってから終了するか、呼び出し元スレッドの独自のタイムアウト間隔が経過するまでブロックします。
Note
ロックで再帰が許可されている場合、読み取りモードでロックに入ったスレッドは、他のスレッドが書き込みモードに入るのを待機している場合でも、再帰的に読み取りモードに入ることができます。
1 つのスレッドはアップグレード可能モードで、他のスレッドは読み取りモードにすることができます。 追加のスレッドがアップグレード可能モードに入るのを待機していて、書き込みモードに入るのを待機しているスレッドがない場合、 TryEnterReadLock メソッドを呼び出すスレッドは直ちに読み取りモードに入り、ブロックしません。