SpinLock.TryEnter Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Versuche, die Sperre zuverlässig abzurufen, sodass selbst wenn eine Ausnahme innerhalb des Methodenaufrufs auftritt, zuverlässig untersucht werden kann, lockTaken ob die Sperre erworben wurde.
Überlädt
| Name | Beschreibung |
|---|---|
| TryEnter(Boolean) |
Versuche, die Sperre zuverlässig abzurufen, sodass selbst wenn eine Ausnahme innerhalb des Methodenaufrufs auftritt, zuverlässig untersucht werden kann, |
| TryEnter(Int32, Boolean) |
Versuche, die Sperre zuverlässig abzurufen, sodass selbst wenn eine Ausnahme innerhalb des Methodenaufrufs auftritt, zuverlässig untersucht werden kann, |
| TryEnter(TimeSpan, Boolean) |
Versuche, die Sperre zuverlässig abzurufen, sodass selbst wenn eine Ausnahme innerhalb des Methodenaufrufs auftritt, zuverlässig untersucht werden kann, |
TryEnter(Boolean)
Versuche, die Sperre zuverlässig abzurufen, sodass selbst wenn eine Ausnahme innerhalb des Methodenaufrufs auftritt, zuverlässig untersucht werden kann, lockTaken ob die Sperre erworben wurde.
public:
void TryEnter(bool % lockTaken);
public void TryEnter(ref bool lockTaken);
member this.TryEnter : bool -> unit
Public Sub TryEnter (ByRef lockTaken As Boolean)
Parameter
- lockTaken
- Boolean
True, wenn die Sperre erworben wird; andernfalls "false".
lockTaken muss vor dem Aufrufen dieser Methode auf "false" initialisiert werden.
Ausnahmen
Das lockTaken Argument muss vor dem Aufrufen von TryEnter auf "false" initialisiert werden.
Die Threadbesitzernachverfolgung ist aktiviert, und der aktuelle Thread hat diese Sperre bereits erworben.
Hinweise
Im Gegensatz dazu Enterblockiert TryEnter nicht, bis die Sperre verfügbar ist. Wenn die Sperre beim Aufrufen von TryEnter nicht verfügbar ist, wird sie sofort ohne weiteres Drehen zurückgegeben.
Weitere Informationen
- SpinLock
- So verwenden Sie SpinLock zur Low-Level-Synchronisierung
- How to: Enable Thread-Tracking Mode in SpinLock
Gilt für:
TryEnter(Int32, Boolean)
Versuche, die Sperre zuverlässig abzurufen, sodass selbst wenn eine Ausnahme innerhalb des Methodenaufrufs auftritt, zuverlässig untersucht werden kann, lockTaken ob die Sperre erworben wurde.
public:
void TryEnter(int millisecondsTimeout, bool % lockTaken);
public void TryEnter(int millisecondsTimeout, ref bool lockTaken);
member this.TryEnter : int * bool -> unit
Public Sub TryEnter (millisecondsTimeout As Integer, ByRef lockTaken As Boolean)
Parameter
- millisecondsTimeout
- Int32
Die Anzahl der zu wartenden Millisekunden oder Infinite (-1) auf unbestimmte Zeit.
- lockTaken
- Boolean
True, wenn die Sperre erworben wird; andernfalls "false".
lockTaken muss vor dem Aufrufen dieser Methode auf "false" initialisiert werden.
Ausnahmen
millisecondsTimeout ist eine andere negative Zahl als -1, die ein unendliches Timeout darstellt.
Das lockTaken Argument muss vor dem Aufrufen von TryEnter auf "false" initialisiert werden.
Die Threadbesitzernachverfolgung ist aktiviert, und der aktuelle Thread hat diese Sperre bereits erworben.
Hinweise
Im Gegensatz dazu Enterblockiert TryEnter nicht unbegrenzt, bis die Sperre verfügbar ist. Sie wird blockiert, bis die Sperre verfügbar ist oder bis die millisecondsTimeout Sperre abgelaufen ist.
Weitere Informationen
- SpinLock
- So verwenden Sie SpinLock zur Low-Level-Synchronisierung
- How to: Enable Thread-Tracking Mode in SpinLock
Gilt für:
TryEnter(TimeSpan, Boolean)
Versuche, die Sperre zuverlässig abzurufen, sodass selbst wenn eine Ausnahme innerhalb des Methodenaufrufs auftritt, zuverlässig untersucht werden kann, lockTaken ob die Sperre erworben wurde.
public:
void TryEnter(TimeSpan timeout, bool % lockTaken);
public void TryEnter(TimeSpan timeout, ref bool lockTaken);
member this.TryEnter : TimeSpan * bool -> unit
Public Sub TryEnter (timeout As TimeSpan, ByRef lockTaken As Boolean)
Parameter
- timeout
- TimeSpan
Ein TimeSpan Wert, der die Anzahl der zu wartenden Millisekunden darstellt, oder eine TimeSpan , die -1 Millisekunden darstellt, die unbegrenzt gewartet werden sollen.
- lockTaken
- Boolean
True, wenn die Sperre erworben wird; andernfalls "false".
lockTaken muss vor dem Aufrufen dieser Methode auf "false" initialisiert werden.
Ausnahmen
timeout ist eine andere negative Zahl als -1 Millisekunden, die ein unendliches Timeout darstellt - oder- Timeout ist größer als Int32.MaxValue Millisekunden.
Das lockTaken Argument muss vor dem Aufrufen von TryEnter auf "false" initialisiert werden.
Die Threadbesitzernachverfolgung ist aktiviert, und der aktuelle Thread hat diese Sperre bereits erworben.
Hinweise
Im Gegensatz dazu Enterblockiert TryEnter nicht unbegrenzt, bis die Sperre verfügbar ist. Sie wird blockiert, bis die Sperre verfügbar ist oder bis die timeout Sperre abgelaufen ist.
Weitere Informationen
- SpinLock
- So verwenden Sie SpinLock zur Low-Level-Synchronisierung
- How to: Enable Thread-Tracking Mode in SpinLock