SemaphoreSlim.Wait Methode

Definition

Blockiert den aktuellen Thread, bis er in SemaphoreSlim eintreten kann.

Überlädt

Wait(TimeSpan, CancellationToken)

Blockiert den aktuellen Thread, bis er in die Warteschlange von SemaphoreSlim eingereiht werden kann, wobei eine TimeSpan den Timeout angibt und ein CancellationToken überwacht wird.

Wait(Int32, CancellationToken)

Blockiert den aktuellen Thread, bis er in die Warteschlange von SemaphoreSlim eingereiht werden kann, wobei eine 32-Bit-Ganzzahl mit Vorzeichen zum Angeben des Timeouts verwendet und ein CancellationToken überwacht wird.

Wait(TimeSpan)

Blockiert den aktuellen Thread, bis er in die Warteschlange von SemaphoreSlim eingereiht werden kann, wobei ein TimeSpan zum Angeben des Timeouts verwendet wird.

Wait(Int32)

Blockiert den aktuellen Thread, bis er in die Warteschlange von SemaphoreSlim eingereiht werden kann, wobei das Timeout mit einer 32-Bit-Ganzzahl mit Vorzeichen angegeben wird.

Wait()

Blockiert den aktuellen Thread, bis er in SemaphoreSlim eintreten kann.

Wait(CancellationToken)

Blockiert den aktuellen Thread, bis er in die Warteschlange von SemaphoreSlim eingereiht werden kann, wobei ein CancellationToken überwacht wird.

Wait(TimeSpan, CancellationToken)

Source:
SemaphoreSlim.cs
Source:
SemaphoreSlim.cs
Source:
SemaphoreSlim.cs

Blockiert den aktuellen Thread, bis er in die Warteschlange von SemaphoreSlim eingereiht werden kann, wobei eine TimeSpan den Timeout angibt und ein CancellationToken überwacht wird.

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

Parameter

timeout
TimeSpan

Eine TimeSpan-Struktur, die die Anzahl der zu wartenden Millisekunden angibt, eine TimeSpan-Struktur, die -1 Millisekunden zum unendlichen Warten angibt, oder eine TimeSpan-Struktur, die 0 Millisekunden darstellt, um den Wait-Handle zu testen und sofort zurückzukehren.

cancellationToken
CancellationToken

Das zu überwachende CancellationToken.

Gibt zurück

true, wenn der aktuelle Thread erfolgreich in die Warteschlange von SemaphoreSlim eingereiht wurde, andernfalls false.

Attribute

Ausnahmen

cancellationToken wurde abgebrochen.

timeout ist eine negative Zahl ungleich –1, die ein unendliches Zeitlimit darstellt.

-oder-

timeout ist größer als Int32.MaxValue.

Die semaphoreSlim-Instanz wurde verworfen.

- oder -

Die CancellationTokenSource, die cancellationToken erstellt hat, wurde bereits freigegeben.

Hinweise

Wenn das Timeout auf -1 Millisekunden festgelegt ist, wartet die Methode unbegrenzt.

Wenn das Timeout auf null Millisekunden festgelegt ist, wird die Methode nicht blockiert. Er testet den Zustand des Wartehandles und gibt sofort zurück.

Wenn ein Thread oder eine Aufgabe den Semaphor eingeben kann, wird die CurrentCount Eigenschaft um eins erhöht.

Wenn cancellationToken abgebrochen wird oder wenn ein Thread oder eine Aufgabe beim Aufrufen Wait(TimeSpan, CancellationToken) blockiert wird und das durch millisecondsTimeout angegebene Timeoutintervall abläuft:

  • Der Thread oder die Aufgabe gelangt nicht in den Semaphor.
  • Die CurrentCount Eigenschaft wird nicht erhöht.

Wenn cancellationToken abgebrochen wird, löst die Methode eine Ausnahme aus OperationCanceledException .

Weitere Informationen

Gilt für:

Wait(Int32, CancellationToken)

Source:
SemaphoreSlim.cs
Source:
SemaphoreSlim.cs
Source:
SemaphoreSlim.cs

Blockiert den aktuellen Thread, bis er in die Warteschlange von SemaphoreSlim eingereiht werden kann, wobei eine 32-Bit-Ganzzahl mit Vorzeichen zum Angeben des Timeouts verwendet und ein CancellationToken überwacht wird.

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

Parameter

millisecondsTimeout
Int32

Die Anzahl der Millisekunden, die gewartet werden muss, Infinite(-1), um auf unbestimmte Zeit zu warten, oder null, um den Zustand des Wait-Handles zu testen und sofort zurückzukehren.

cancellationToken
CancellationToken

Das zu überwachende CancellationToken.

Gibt zurück

true, wenn der aktuelle Thread erfolgreich in die Warteschlange von SemaphoreSlim eingereiht wurde, andernfalls false.

Attribute

Ausnahmen

cancellationToken wurde abgebrochen.

millisecondsTimeout ist eine negative Zahl ungleich –1, die ein unendliches Zeitlimit darstellt.

- oder -

millisecondsTimeout ist größer als Int32.MaxValue.

Die SemaphoreSlim-Instanz wurde verworfen, oder die CancellationTokenSource, die cancellationToken erstellt hat, wurde verworfen.

Hinweise

Wenn das Timeout auf -1 Millisekunden festgelegt ist, wartet die Methode unbegrenzt.

Wenn das Timeout auf null Millisekunden festgelegt ist, wird die Methode nicht blockiert. Er testet den Zustand des Wartehandles und gibt sofort zurück.

Wenn ein Thread oder eine Aufgabe den Semaphor eingeben kann, wird die CurrentCount Eigenschaft um eins erhöht.

Wenn cancellationToken abgebrochen wird oder wenn ein Thread oder eine Aufgabe beim Aufrufen Wait(Int32, CancellationToken) blockiert wird und das durch millisecondsTimeout angegebene Timeoutintervall abläuft:

  • Der Thread oder die Aufgabe gelangt nicht in den Semaphor.
  • Die CurrentCount Eigenschaft wird nicht erhöht.

Wenn cancellationToken abgebrochen wird, löst die Methode eine Ausnahme aus OperationCanceledException .

Weitere Informationen

Gilt für:

Wait(TimeSpan)

Source:
SemaphoreSlim.cs
Source:
SemaphoreSlim.cs
Source:
SemaphoreSlim.cs

Blockiert den aktuellen Thread, bis er in die Warteschlange von SemaphoreSlim eingereiht werden kann, wobei ein TimeSpan zum Angeben des Timeouts verwendet wird.

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

Parameter

timeout
TimeSpan

Eine TimeSpan-Struktur, die die Anzahl der zu wartenden Millisekunden angibt, eine TimeSpan-Struktur, die -1 Millisekunden zum unendlichen Warten angibt, oder eine TimeSpan-Struktur, die 0 Millisekunden darstellt, um den Wait-Handle zu testen und sofort zurückzukehren.

Gibt zurück

true, wenn der aktuelle Thread erfolgreich in die Warteschlange von SemaphoreSlim eingereiht wurde, andernfalls false.

Attribute

Ausnahmen

timeout ist eine negative Zahl ungleich –1, die ein unendliches Zeitlimit darstellt.

- oder -

timeout ist größer als Int32.MaxValue.

Die semaphoreSlim-Instanz wurde verworfen.

Hinweise

Wenn das Timeout auf -1 Millisekunden festgelegt ist, wartet die Methode unbegrenzt.

Wenn das Timeout auf null Millisekunden festgelegt ist, wird die Methode nicht blockiert. Er testet den Zustand des Wartehandles und gibt sofort zurück.

Wenn ein Thread oder eine Aufgabe den Semaphor eingeben kann, wird die CurrentCount Eigenschaft um eins erhöht.

Wenn ein Thread oder eine Aufgabe beim Aufrufen Wait(TimeSpan) blockiert wird und das durch millisecondsTimeout angegebene Timeoutintervall abläuft:

  • Der Thread oder die Aufgabe gelangt nicht in den Semaphor.
  • Die CurrentCount Eigenschaft wird nicht erhöht.

Weitere Informationen

Gilt für:

Wait(Int32)

Source:
SemaphoreSlim.cs
Source:
SemaphoreSlim.cs
Source:
SemaphoreSlim.cs

Blockiert den aktuellen Thread, bis er in die Warteschlange von SemaphoreSlim eingereiht werden kann, wobei das Timeout mit einer 32-Bit-Ganzzahl mit Vorzeichen angegeben wird.

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

Parameter

millisecondsTimeout
Int32

Die Anzahl der Millisekunden, die gewartet werden muss, Infinite(-1), um auf unbestimmte Zeit zu warten, oder null, um den Zustand des Wait-Handles zu testen und sofort zurückzukehren.

Gibt zurück

true, wenn der aktuelle Thread erfolgreich in die Warteschlange von SemaphoreSlim eingereiht wurde, andernfalls false.

Attribute

Ausnahmen

millisecondsTimeout ist eine andere negative Zahl als -1, die ein unendliches Timeout darstellt , oder das Timeout ist größer als Int32.MaxValue.

Hinweise

Wenn das Timeout auf -1 Millisekunden festgelegt ist, wartet die Methode unbegrenzt.

Wenn das Timeout auf null Millisekunden festgelegt ist, wird die Methode nicht blockiert. Er testet den Zustand des Wartehandles und gibt sofort zurück.

Wenn ein Thread oder eine Aufgabe den Semaphor eingeben kann, wird die CurrentCount Eigenschaft um eins erhöht.

Wenn ein Thread oder eine Aufgabe beim Aufrufen Wait(Int32) blockiert wird und das durch millisecondsTimeout angegebene Timeoutintervall abläuft:

  • Der Thread oder die Aufgabe gelangt nicht in den Semaphor.
  • Die CurrentCount Eigenschaft wird nicht erhöht.

Weitere Informationen

Gilt für:

Wait()

Source:
SemaphoreSlim.cs
Source:
SemaphoreSlim.cs
Source:
SemaphoreSlim.cs

Blockiert den aktuellen Thread, bis er in SemaphoreSlim eintreten kann.

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 ()
Attribute

Ausnahmen

Die aktuelle Instanz wurde bereits verworfen.

Hinweise

Wenn ein Thread oder eine Aufgabe den Semaphor eingeben kann, wird die CurrentCount Eigenschaft um eins erhöht.

Weitere Informationen

Gilt für:

Wait(CancellationToken)

Source:
SemaphoreSlim.cs
Source:
SemaphoreSlim.cs
Source:
SemaphoreSlim.cs

Blockiert den aktuellen Thread, bis er in die Warteschlange von SemaphoreSlim eingereiht werden kann, wobei ein CancellationToken überwacht wird.

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)

Parameter

cancellationToken
CancellationToken

Das zu überwachende CancellationToken-Token.

Attribute

Ausnahmen

cancellationToken wurde abgebrochen.

Die aktuelle Instanz wurde bereits verworfen.

- oder -

Die CancellationTokenSource, die cancellationToken erstellt hat, wurde bereits freigegeben.

Hinweise

Wenn ein Thread oder eine Aufgabe den Semaphor eingeben kann, wird die CurrentCount Eigenschaft um eins erhöht.

Wenn cancellationToken abgebrochen wird, wird der Thread oder die Aufgabe nicht in den Semaphor eingegeben, und die CurrentCount Eigenschaft wird nicht dekrementiert. Stattdessen löst die -Methode eine Ausnahme aus OperationCanceledException .

Weitere Informationen

Gilt für: