Udostępnij za pośrednictwem


SemaphoreSlim.Wait Metoda

Definicja

Blokuje bieżący wątek do momentu wprowadzenia SemaphoreSlim.

Przeciążenia

Wait(TimeSpan, CancellationToken)

Blokuje bieżący wątek do momentu wprowadzenia SemaphoreSlimprzy użyciu TimeSpan określającego limit czasu podczas obserwowania CancellationToken.

Wait(Int32, CancellationToken)

Blokuje bieżący wątek, dopóki nie będzie mógł wprowadzić SemaphoreSlim, używając 32-bitowej liczby całkowitej ze znakiem określającym limit czasu, obserwując CancellationToken.

Wait(TimeSpan)

Blokuje bieżący wątek, dopóki nie będzie mógł wprowadzić SemaphoreSlim, używając TimeSpan do określenia limitu czasu.

Wait(Int32)

Blokuje bieżący wątek, dopóki nie będzie mógł wprowadzić SemaphoreSlim, używając 32-bitowej liczby całkowitej ze znakiem określającym limit czasu.

Wait()

Blokuje bieżący wątek do momentu wprowadzenia SemaphoreSlim.

Wait(CancellationToken)

Blokuje bieżący wątek do momentu wprowadzenia SemaphoreSlim, podczas obserwowania CancellationToken.

Wait(TimeSpan, CancellationToken)

Źródło:
SemaphoreSlim.cs
Źródło:
SemaphoreSlim.cs
Źródło:
SemaphoreSlim.cs

Blokuje bieżący wątek do momentu wprowadzenia SemaphoreSlimprzy użyciu TimeSpan określającego limit czasu podczas obserwowania CancellationToken.

public:
 bool Wait(TimeSpan timeout, System::Threading::CancellationToken cancellationToken);
public bool Wait (TimeSpan timeout, System.Threading.CancellationToken cancellationToken);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public bool Wait (TimeSpan timeout, System.Threading.CancellationToken cancellationToken);
member this.Wait : TimeSpan * System.Threading.CancellationToken -> bool
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
member this.Wait : TimeSpan * System.Threading.CancellationToken -> bool
Public Function Wait (timeout As TimeSpan, cancellationToken As CancellationToken) As Boolean

Parametry

timeout
TimeSpan

TimeSpan, który reprezentuje liczbę milisekund oczekiwania, TimeSpan reprezentujący -1 milisekund oczekiwania na czas nieokreślony lub TimeSpan, który reprezentuje 0 milisekund w celu przetestowania uchwytu oczekiwania i natychmiastowego zwrócenia.

cancellationToken
CancellationToken

CancellationToken do obserwowania.

Zwraca

true, jeśli bieżący wątek został pomyślnie wprowadzony SemaphoreSlim; w przeciwnym razie false.

Atrybuty

Wyjątki

cancellationToken została anulowana.

timeout jest liczbą ujemną inną niż -1, która reprezentuje nieskończony limit czasu.

-lub-.

timeout jest większa niż Int32.MaxValue.

Wystąpienie semaphoreSlim zostało usunięte.

-lub-

CancellationTokenSource, który utworzył cancellationToken, został już usunięty.

Uwagi

Jeśli limit czasu jest ustawiony na -1 milisekund, metoda czeka na czas nieokreślony.

Jeśli limit czasu jest ustawiony na zero milisekund, metoda nie blokuje. Testuje stan uchwytu oczekiwania i zwraca natychmiast.

Jeśli wątek lub zadanie może wprowadzić semafor, dekrementuje właściwość CurrentCount o jeden.

Jeśli cancellationToken zostanie anulowana lub gdy wątek lub zadanie zostanie zablokowane podczas wywoływania Wait(TimeSpan, CancellationToken) i interwał limitu czasu określony przez millisecondsTimeout wygaśnie:

  • Wątek lub zadanie nie wprowadza semafora.
  • Właściwość CurrentCount nie jest dekrementowana.

Jeśli cancellationToken zostanie anulowana, metoda zgłasza wyjątek OperationCanceledException.

Zobacz też

Dotyczy

Wait(Int32, CancellationToken)

Źródło:
SemaphoreSlim.cs
Źródło:
SemaphoreSlim.cs
Źródło:
SemaphoreSlim.cs

Blokuje bieżący wątek, dopóki nie będzie mógł wprowadzić SemaphoreSlim, używając 32-bitowej liczby całkowitej ze znakiem określającym limit czasu, obserwując CancellationToken.

public:
 bool Wait(int millisecondsTimeout, System::Threading::CancellationToken cancellationToken);
public bool Wait (int millisecondsTimeout, System.Threading.CancellationToken cancellationToken);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public bool Wait (int millisecondsTimeout, System.Threading.CancellationToken cancellationToken);
member this.Wait : int * System.Threading.CancellationToken -> bool
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
member this.Wait : int * System.Threading.CancellationToken -> bool
Public Function Wait (millisecondsTimeout As Integer, cancellationToken As CancellationToken) As Boolean

Parametry

millisecondsTimeout
Int32

Liczba milisekund oczekiwania, Infinite (-1) oczekiwania na czas nieokreślony lub zero w celu przetestowania stanu uchwytu oczekiwania i natychmiastowego powrotu.

cancellationToken
CancellationToken

CancellationToken do obserwowania.

Zwraca

true, jeśli bieżący wątek został pomyślnie wprowadzony SemaphoreSlim; w przeciwnym razie false.

Atrybuty

Wyjątki

cancellationToken została anulowana.

millisecondsTimeout jest liczbą ujemną inną niż -1, która reprezentuje nieskończony limit czasu.

-lub-

millisecondsTimeout jest większa niż Int32.MaxValue.

Wystąpienie SemaphoreSlim zostało usunięte lub usunięto CancellationTokenSource utworzone cancellationToken.

Uwagi

Jeśli limit czasu jest ustawiony na -1 milisekund, metoda czeka na czas nieokreślony.

Jeśli limit czasu jest ustawiony na zero milisekund, metoda nie blokuje. Testuje stan uchwytu oczekiwania i zwraca natychmiast.

Jeśli wątek lub zadanie może wprowadzić semafor, dekrementuje właściwość CurrentCount o jeden.

Jeśli cancellationToken zostanie anulowana lub gdy wątek lub zadanie zostanie zablokowane podczas wywoływania Wait(Int32, CancellationToken) i interwał limitu czasu określony przez millisecondsTimeout wygaśnie:

  • Wątek lub zadanie nie wprowadza semafora.
  • Właściwość CurrentCount nie jest dekrementowana.

Jeśli cancellationToken zostanie anulowana, metoda zgłasza wyjątek OperationCanceledException.

Zobacz też

Dotyczy

Wait(TimeSpan)

Źródło:
SemaphoreSlim.cs
Źródło:
SemaphoreSlim.cs
Źródło:
SemaphoreSlim.cs

Blokuje bieżący wątek, dopóki nie będzie mógł wprowadzić SemaphoreSlim, używając TimeSpan do określenia limitu czasu.

public:
 bool Wait(TimeSpan timeout);
public bool Wait (TimeSpan timeout);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public bool Wait (TimeSpan timeout);
member this.Wait : TimeSpan -> bool
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
member this.Wait : TimeSpan -> bool
Public Function Wait (timeout As TimeSpan) As Boolean

Parametry

timeout
TimeSpan

TimeSpan, który reprezentuje liczbę milisekund oczekiwania, TimeSpan reprezentujący -1 milisekund oczekiwania na czas nieokreślony lub TimeSpan, który reprezentuje 0 milisekund w celu przetestowania uchwytu oczekiwania i natychmiastowego zwrócenia.

Zwraca

true, jeśli bieżący wątek został pomyślnie wprowadzony SemaphoreSlim; w przeciwnym razie false.

Atrybuty

Wyjątki

timeout jest liczbą ujemną inną niż -1, która reprezentuje nieskończony limit czasu.

-lub-

timeout jest większa niż Int32.MaxValue.

Wystąpienie semaphoreSlim zostało usunięte.

Uwagi

Jeśli limit czasu jest ustawiony na -1 milisekund, metoda czeka na czas nieokreślony.

Jeśli limit czasu jest ustawiony na zero milisekund, metoda nie blokuje. Testuje stan uchwytu oczekiwania i zwraca natychmiast.

Jeśli wątek lub zadanie może wprowadzić semafor, dekrementuje właściwość CurrentCount o jeden.

Jeśli wątek lub zadanie jest blokowane podczas wywoływania Wait(TimeSpan) i interwał limitu czasu określony przez millisecondsTimeout wygaśnie:

  • Wątek lub zadanie nie wprowadza semafora.
  • Właściwość CurrentCount nie jest dekrementowana.

Zobacz też

Dotyczy

Wait(Int32)

Źródło:
SemaphoreSlim.cs
Źródło:
SemaphoreSlim.cs
Źródło:
SemaphoreSlim.cs

Blokuje bieżący wątek, dopóki nie będzie mógł wprowadzić SemaphoreSlim, używając 32-bitowej liczby całkowitej ze znakiem określającym limit czasu.

public:
 bool Wait(int millisecondsTimeout);
public bool Wait (int millisecondsTimeout);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public bool Wait (int millisecondsTimeout);
member this.Wait : int -> bool
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
member this.Wait : int -> bool
Public Function Wait (millisecondsTimeout As Integer) As Boolean

Parametry

millisecondsTimeout
Int32

Liczba milisekund oczekiwania, Infinite (-1) oczekiwania na czas nieokreślony lub zero w celu przetestowania stanu uchwytu oczekiwania i natychmiastowego powrotu.

Zwraca

true, jeśli bieżący wątek został pomyślnie wprowadzony SemaphoreSlim; w przeciwnym razie false.

Atrybuty

Wyjątki

millisecondsTimeout jest liczbą ujemną inną niż -1, która reprezentuje nieskończony limit czasu lub limit czasu jest większy niż Int32.MaxValue.

Uwagi

Jeśli limit czasu jest ustawiony na -1 milisekund, metoda czeka na czas nieokreślony.

Jeśli limit czasu jest ustawiony na zero milisekund, metoda nie blokuje. Testuje stan uchwytu oczekiwania i zwraca natychmiast.

Jeśli wątek lub zadanie może wprowadzić semafor, dekrementuje właściwość CurrentCount o jeden.

Jeśli wątek lub zadanie jest blokowane podczas wywoływania Wait(Int32) i interwał limitu czasu określony przez millisecondsTimeout wygaśnie:

  • Wątek lub zadanie nie wprowadza semafora.
  • Właściwość CurrentCount nie jest dekrementowana.

Zobacz też

Dotyczy

Wait()

Źródło:
SemaphoreSlim.cs
Źródło:
SemaphoreSlim.cs
Źródło:
SemaphoreSlim.cs

Blokuje bieżący wątek do momentu wprowadzenia SemaphoreSlim.

public:
 void Wait();
public void Wait ();
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public void Wait ();
member this.Wait : unit -> unit
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
member this.Wait : unit -> unit
Public Sub Wait ()
Atrybuty

Wyjątki

Bieżące wystąpienie zostało już usunięte.

Uwagi

Jeśli wątek lub zadanie może wprowadzić semafor, dekrementuje właściwość CurrentCount o jeden.

Zobacz też

Dotyczy

Wait(CancellationToken)

Źródło:
SemaphoreSlim.cs
Źródło:
SemaphoreSlim.cs
Źródło:
SemaphoreSlim.cs

Blokuje bieżący wątek do momentu wprowadzenia SemaphoreSlim, podczas obserwowania CancellationToken.

public:
 void Wait(System::Threading::CancellationToken cancellationToken);
public void Wait (System.Threading.CancellationToken cancellationToken);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public void Wait (System.Threading.CancellationToken cancellationToken);
member this.Wait : System.Threading.CancellationToken -> unit
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
member this.Wait : System.Threading.CancellationToken -> unit
Public Sub Wait (cancellationToken As CancellationToken)

Parametry

cancellationToken
CancellationToken

Token CancellationToken do obserwowania.

Atrybuty

Wyjątki

cancellationToken została anulowana.

Bieżące wystąpienie zostało już usunięte.

-lub-

CancellationTokenSource, który utworzył cancellationToken, został już usunięty.

Uwagi

Jeśli wątek lub zadanie może wprowadzić semafor, dekrementuje właściwość CurrentCount o jeden.

Jeśli cancellationToken zostanie anulowana, wątek lub zadanie nie wprowadzi semafora, a właściwość CurrentCount nie zostanie zdekrementowana. Zamiast tego metoda zgłasza wyjątek OperationCanceledException.

Zobacz też

Dotyczy