Freigeben über


SemaphoreSlim.Wait Methode

Definition

Blockiert den aktuellen Thread, bis er die SemaphoreSlimeingeben kann.

Überlädt

Wait(TimeSpan, CancellationToken)

Blockiert den aktuellen Thread, bis er den SemaphoreSlimeingeben kann. Dabei wird ein TimeSpan verwendet, der das Timeout angibt, während ein CancellationTokenbeobachtet wird.

Wait(Int32, CancellationToken)

Blockiert den aktuellen Thread, bis er die SemaphoreSlimeingeben kann. Dabei wird eine 32-Bit-ganzzahl mit Vorzeichen verwendet, die das Timeout angibt, während ein CancellationTokenbeobachtet wird.

Wait(TimeSpan)

Blockiert den aktuellen Thread, bis er den SemaphoreSlimeingeben kann, wobei ein TimeSpan zum Angeben des Timeouts verwendet wird.

Wait(Int32)

Blockiert den aktuellen Thread, bis er die SemaphoreSlimeingeben kann. Dabei wird eine 32-Bit-ganzzahl mit Vorzeichen verwendet, die das Timeout angibt.

Wait()

Blockiert den aktuellen Thread, bis er die SemaphoreSlimeingeben kann.

Wait(CancellationToken)

Blockiert den aktuellen Thread, bis er die SemaphoreSlimeingeben kann, während ein CancellationTokenbeobachtet wird.

Wait(TimeSpan, CancellationToken)

Quelle:
SemaphoreSlim.cs
Quelle:
SemaphoreSlim.cs
Quelle:
SemaphoreSlim.cs

Blockiert den aktuellen Thread, bis er den SemaphoreSlimeingeben kann. Dabei wird ein TimeSpan verwendet, der das Timeout angibt, während ein CancellationTokenbeobachtet 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, die die Anzahl der zu wartenden Millisekunden darstellt, eine TimeSpan, die -1 Millisekunden für unbegrenzte Wartezeit darstellt, oder eine TimeSpan, die 0 Millisekunden darstellt, um das Wartekästchen zu testen und sofort zurückzugeben.

cancellationToken
CancellationToken

Die zu beobachtende CancellationToken.

Gibt zurück

true, wenn der aktuelle Thread erfolgreich den SemaphoreSlimeingegeben hat; andernfalls false.

Attribute

Ausnahmen

cancellationToken wurde abgebrochen.

timeout ist eine andere negative Zahl als -1, die ein unendliches Timeout darstellt.

-oder-.

timeout ist größer als Int32.MaxValue.

Die SemaphorESlim-Instanz wurde verworfen.

-oder-

Die CancellationTokenSource, die cancellationToken erstellt hat, wurde bereits gelöscht.

Hinweise

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

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

Wenn ein Thread oder eine Aufgabe in der Lage ist, das Semaphor einzugeben, wird die CurrentCount Eigenschaft um eine erhöht.

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

  • Der Thread oder die Aufgabe wechselt nicht in das Semaphor.
  • Die CurrentCount-Eigenschaft wird nicht erhöht.

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

Weitere Informationen

Gilt für:

Wait(Int32, CancellationToken)

Quelle:
SemaphoreSlim.cs
Quelle:
SemaphoreSlim.cs
Quelle:
SemaphoreSlim.cs

Blockiert den aktuellen Thread, bis er die SemaphoreSlimeingeben kann. Dabei wird eine 32-Bit-ganzzahl mit Vorzeichen verwendet, die das Timeout angibt, während ein CancellationTokenbeobachtet 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 zu wartenden Millisekunden, Infinite (-1) auf unbestimmte Zeit oder null, um den Status des Wartekästchens zu testen und sofort zurückzugeben.

cancellationToken
CancellationToken

Die zu beobachtende CancellationToken.

Gibt zurück

true, wenn der aktuelle Thread erfolgreich den SemaphoreSlimeingegeben hat; andernfalls false.

Attribute

Ausnahmen

cancellationToken wurde abgebrochen.

millisecondsTimeout ist eine andere negative Zahl als -1, die ein unendliches Timeout darstellt.

-oder-

millisecondsTimeout ist größer als Int32.MaxValue.

Die SemaphoreSlim Instanz wurde gelöscht, oder die CancellationTokenSource, die cancellationToken erstellt hat, wurde verworfen.

Hinweise

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

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

Wenn ein Thread oder eine Aufgabe in der Lage ist, das Semaphor einzugeben, wird die CurrentCount Eigenschaft um eine erhöht.

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

  • Der Thread oder die Aufgabe wechselt nicht in das Semaphor.
  • Die CurrentCount-Eigenschaft wird nicht erhöht.

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

Weitere Informationen

Gilt für:

Wait(TimeSpan)

Quelle:
SemaphoreSlim.cs
Quelle:
SemaphoreSlim.cs
Quelle:
SemaphoreSlim.cs

Blockiert den aktuellen Thread, bis er den SemaphoreSlimeingeben 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, die die Anzahl der zu wartenden Millisekunden darstellt, eine TimeSpan, die -1 Millisekunden für unbegrenzte Wartezeit darstellt, oder eine TimeSpan, die 0 Millisekunden darstellt, um das Wartekästchen zu testen und sofort zurückzugeben.

Gibt zurück

true, wenn der aktuelle Thread erfolgreich den SemaphoreSlimeingegeben hat; andernfalls false.

Attribute

Ausnahmen

timeout ist eine andere negative Zahl als -1, die ein unendliches Timeout 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 auf unbestimmte Zeit.

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

Wenn ein Thread oder eine Aufgabe in der Lage ist, das Semaphor einzugeben, wird die CurrentCount Eigenschaft um eine erhöht.

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

  • Der Thread oder die Aufgabe wechselt nicht in das Semaphor.
  • Die CurrentCount-Eigenschaft wird nicht erhöht.

Weitere Informationen

Gilt für:

Wait(Int32)

Quelle:
SemaphoreSlim.cs
Quelle:
SemaphoreSlim.cs
Quelle:
SemaphoreSlim.cs

Blockiert den aktuellen Thread, bis er die SemaphoreSlimeingeben kann. Dabei wird eine 32-Bit-ganzzahl mit Vorzeichen verwendet, die das Timeout angibt.

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 zu wartenden Millisekunden, Infinite (-1) auf unbestimmte Zeit oder null, um den Status des Wartekästchens zu testen und sofort zurückzugeben.

Gibt zurück

true, wenn der aktuelle Thread erfolgreich den SemaphoreSlimeingegeben hat; andernfalls false.

Attribute

Ausnahmen

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

Die SemaphoreSlim wurde verworfen.

Hinweise

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

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

Wenn ein Thread oder eine Aufgabe in der Lage ist, das Semaphor einzugeben, wird die CurrentCount Eigenschaft um eine erhöht.

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

  • Der Thread oder die Aufgabe wechselt nicht in das Semaphor.
  • Die CurrentCount-Eigenschaft wird nicht erhöht.

Weitere Informationen

Gilt für:

Wait()

Quelle:
SemaphoreSlim.cs
Quelle:
SemaphoreSlim.cs
Quelle:
SemaphoreSlim.cs

Blockiert den aktuellen Thread, bis er die SemaphoreSlimeingeben 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 in der Lage ist, das Semaphor einzugeben, wird die CurrentCount Eigenschaft um eine erhöht.

Weitere Informationen

Gilt für:

Wait(CancellationToken)

Quelle:
SemaphoreSlim.cs
Quelle:
SemaphoreSlim.cs
Quelle:
SemaphoreSlim.cs

Blockiert den aktuellen Thread, bis er die SemaphoreSlimeingeben kann, während ein CancellationTokenbeobachtet 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 beobachtende CancellationToken Token.

Attribute

Ausnahmen

cancellationToken wurde abgebrochen.

Die aktuelle Instanz wurde bereits verworfen.

-oder-

Die CancellationTokenSource, die cancellationToken erstellt hat, wurde bereits gelöscht.

Hinweise

Wenn ein Thread oder eine Aufgabe in der Lage ist, das Semaphor einzugeben, wird die CurrentCount Eigenschaft um eine erhöht.

Wenn cancellationToken abgebrochen wird, wird der Thread oder die Aufgabe nicht in das Semaphor eingegeben, und die eigenschaft CurrentCount wird nicht erhöht. Stattdessen löst die Methode eine OperationCanceledException Ausnahme aus.

Weitere Informationen

Gilt für: