SemaphoreSlim.Wait メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
SemaphoreSlimに入るまで、現在のスレッドをブロックします。
オーバーロード
| 名前 | 説明 |
|---|---|
| Wait(TimeSpan, CancellationToken) |
SemaphoreSlimを監視しながら、タイムアウトを指定するTimeSpanを使用して、CancellationTokenに入ることができるまで、現在のスレッドをブロックします。 |
| Wait(Int32, CancellationToken) |
SemaphoreSlimを監視しながら、タイムアウトを指定する 32 ビット符号付き整数を使用して、CancellationTokenに入ることができるまで、現在のスレッドをブロックします。 |
| Wait(TimeSpan) |
SemaphoreSlimを使用してタイムアウトを指定して、TimeSpanに入ることができるまで、現在のスレッドをブロックします。 |
| Wait(Int32) |
タイムアウトを指定する 32 ビット符号付き整数を使用して、 SemaphoreSlimに入ることができるまで、現在のスレッドをブロックします。 |
| Wait() |
SemaphoreSlimに入るまで、現在のスレッドをブロックします。 |
| Wait(CancellationToken) |
SemaphoreSlimを観察しながら、CancellationTokenに入ることができるまで、現在のスレッドをブロックします。 |
Wait(TimeSpan, CancellationToken)
SemaphoreSlimを監視しながら、タイムアウトを指定するTimeSpanを使用して、CancellationTokenに入ることができるまで、現在のスレッドをブロックします。
public:
bool Wait(TimeSpan timeout, System::Threading::CancellationToken cancellationToken);
public bool Wait(TimeSpan timeout, System.Threading.CancellationToken cancellationToken);
member this.Wait : TimeSpan * System.Threading.CancellationToken -> bool
Public Function Wait (timeout As TimeSpan, cancellationToken As CancellationToken) As Boolean
パラメーター
- timeout
- TimeSpan
待機するミリ秒数を表す TimeSpan 、無期限に待機する -1 ミリ秒を表す TimeSpan 、または待機ハンドルをテストしてすぐに返す 0 ミリ秒を表す TimeSpan 。
- cancellationToken
- CancellationToken
観察する CancellationToken 。
返品
true 現在のスレッドが正常に SemaphoreSlimに入った場合は a0/>。それ以外の場合は false。
例外
cancellationToken が取り消されました。
注釈
タイムアウトが -1 ミリ秒に設定されている場合、メソッドは無期限に待機します。
タイムアウトが 0 ミリ秒に設定されている場合、メソッドはブロックしません。 待機ハンドルの状態をテストし、すぐに返します。
スレッドまたはタスクがセマフォに入ることができる場合は、 CurrentCount プロパティを 1 つずつデクリメントします。
cancellationTokenが取り消された場合、またはWait(TimeSpan, CancellationToken)の呼び出し時にスレッドまたはタスクがブロックされ、millisecondsTimeoutで指定されたタイムアウト間隔が経過した場合:
- スレッドまたはタスクがセマフォに入りません。
- CurrentCount プロパティはデクリメントされません。
cancellationTokenが取り消された場合、メソッドはOperationCanceledException例外をスローします。
こちらもご覧ください
適用対象
Wait(Int32, CancellationToken)
SemaphoreSlimを監視しながら、タイムアウトを指定する 32 ビット符号付き整数を使用して、CancellationTokenに入ることができるまで、現在のスレッドをブロックします。
public:
bool Wait(int millisecondsTimeout, System::Threading::CancellationToken cancellationToken);
public bool Wait(int millisecondsTimeout, System.Threading.CancellationToken cancellationToken);
member this.Wait : int * System.Threading.CancellationToken -> bool
Public Function Wait (millisecondsTimeout As Integer, cancellationToken As CancellationToken) As Boolean
パラメーター
- cancellationToken
- CancellationToken
観察する CancellationToken 。
返品
true 現在のスレッドが正常に SemaphoreSlimに入った場合は a0/>。それ以外の場合は false。
例外
cancellationToken が取り消されました。
SemaphoreSlim インスタンスが破棄されたか、CancellationTokenSourceを作成したcancellationTokenが破棄されました。
注釈
タイムアウトが -1 ミリ秒に設定されている場合、メソッドは無期限に待機します。
タイムアウトが 0 ミリ秒に設定されている場合、メソッドはブロックしません。 待機ハンドルの状態をテストし、すぐに返します。
スレッドまたはタスクがセマフォに入ることができる場合は、 CurrentCount プロパティを 1 つずつデクリメントします。
cancellationTokenが取り消された場合、またはWait(Int32, CancellationToken)の呼び出し時にスレッドまたはタスクがブロックされ、millisecondsTimeoutで指定されたタイムアウト間隔が経過した場合:
- スレッドまたはタスクがセマフォに入りません。
- CurrentCount プロパティはデクリメントされません。
cancellationTokenが取り消された場合、メソッドはOperationCanceledException例外をスローします。
こちらもご覧ください
適用対象
Wait(TimeSpan)
SemaphoreSlimを使用してタイムアウトを指定して、TimeSpanに入ることができるまで、現在のスレッドをブロックします。
public:
bool Wait(TimeSpan timeout);
public bool Wait(TimeSpan timeout);
member this.Wait : TimeSpan -> bool
Public Function Wait (timeout As TimeSpan) As Boolean
パラメーター
- timeout
- TimeSpan
待機するミリ秒数を表す TimeSpan 、無期限に待機する -1 ミリ秒を表す TimeSpan 、または待機ハンドルをテストしてすぐに返す 0 ミリ秒を表す TimeSpan 。
返品
true 現在のスレッドが正常に SemaphoreSlimに入った場合は a0/>。それ以外の場合は false。
例外
semaphoreSlim インスタンスが破棄されました。
注釈
タイムアウトが -1 ミリ秒に設定されている場合、メソッドは無期限に待機します。
タイムアウトが 0 ミリ秒に設定されている場合、メソッドはブロックしません。 待機ハンドルの状態をテストし、すぐに返します。
スレッドまたはタスクがセマフォに入ることができる場合は、 CurrentCount プロパティを 1 つずつデクリメントします。
Wait(TimeSpan)の呼び出し時にスレッドまたはタスクがブロックされ、millisecondsTimeoutで指定されたタイムアウト間隔が期限切れになった場合:
- スレッドまたはタスクがセマフォに入りません。
- CurrentCount プロパティはデクリメントされません。
こちらもご覧ください
適用対象
Wait(Int32)
タイムアウトを指定する 32 ビット符号付き整数を使用して、 SemaphoreSlimに入ることができるまで、現在のスレッドをブロックします。
public:
bool Wait(int millisecondsTimeout);
public bool Wait(int millisecondsTimeout);
member this.Wait : int -> bool
Public Function Wait (millisecondsTimeout As Integer) As Boolean
パラメーター
返品
true 現在のスレッドが正常に SemaphoreSlimに入った場合は a0/>。それ以外の場合は false。
例外
millisecondsTimeout は -1 以外の負の数で、無限タイムアウトを表します。タイムアウトが Int32.MaxValue より大きい場合。
SemaphoreSlimが破棄されました。
注釈
タイムアウトが -1 ミリ秒に設定されている場合、メソッドは無期限に待機します。
タイムアウトが 0 ミリ秒に設定されている場合、メソッドはブロックしません。 待機ハンドルの状態をテストし、すぐに返します。
スレッドまたはタスクがセマフォに入ることができる場合は、 CurrentCount プロパティを 1 つずつデクリメントします。
Wait(Int32)の呼び出し時にスレッドまたはタスクがブロックされ、millisecondsTimeoutで指定されたタイムアウト間隔が期限切れになった場合:
- スレッドまたはタスクがセマフォに入りません。
- CurrentCount プロパティはデクリメントされません。
こちらもご覧ください
適用対象
Wait()
SemaphoreSlimに入るまで、現在のスレッドをブロックします。
public:
void Wait();
public void Wait();
member this.Wait : unit -> unit
Public Sub Wait ()
例外
現在のインスタンスは既に破棄されています。
注釈
スレッドまたはタスクがセマフォに入ることができる場合は、 CurrentCount プロパティを 1 つずつデクリメントします。
こちらもご覧ください
適用対象
Wait(CancellationToken)
SemaphoreSlimを観察しながら、CancellationTokenに入ることができるまで、現在のスレッドをブロックします。
public:
void Wait(System::Threading::CancellationToken cancellationToken);
public void Wait(System.Threading.CancellationToken cancellationToken);
member this.Wait : System.Threading.CancellationToken -> unit
Public Sub Wait (cancellationToken As CancellationToken)
パラメーター
- cancellationToken
- CancellationToken
観察する CancellationToken トークン。
例外
cancellationToken が取り消されました。
注釈
スレッドまたはタスクがセマフォに入ることができる場合は、 CurrentCount プロパティを 1 つずつデクリメントします。
cancellationTokenが取り消された場合、スレッドまたはタスクはセマフォに入りません。また、CurrentCount プロパティはデクリメントされません。 代わりに、メソッドは OperationCanceledException 例外をスローします。