Lock.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.
Überlädt
TryEnter() |
Versucht, die Sperre zu betreten, ohne zu warten. |
TryEnter(Int32) |
Versucht, die Sperre zu betreten, und wartet bei Bedarf auf die angegebene Anzahl von Millisekunden, bis die Sperre eingegeben werden kann. |
TryEnter(TimeSpan) |
Versucht, die Sperre zu betreten, und wartet bei Bedarf, bis die Sperre eingegeben werden kann oder bis das angegebene Timeout abläuft. |
TryEnter()
- Quelle:
- Lock.cs
Versucht, die Sperre zu betreten, ohne zu warten.
public:
bool TryEnter();
public bool TryEnter ();
member this.TryEnter : unit -> bool
Public Function TryEnter () As Boolean
Gibt zurück
true
, wenn die Sperre vom aktuellen Thread eingegeben wurde; false
andernfalls .
Ausnahmen
Die Sperre hat die Grenze für wiederholte Einträge durch den aktuellen Thread erreicht. Der Grenzwert ist implementierungsdefiniert und soll so hoch sein, dass er in normalen Situationen nicht erreicht wird.
Hinweise
Wenn die Methode zurückgibt true
, ist der aktuelle Thread der einzige Thread, der die Sperre enthält. Wenn die Sperre nicht sofort eingegeben werden kann, gibt die Methode zurück false
, ohne auf die Sperre zu warten. Wenn die Sperre bereits vom aktuellen Thread gehalten wird, wird die Sperre erneut eingegeben. Um die Sperre vollständig zu beenden und anderen Threads den Eintritt in die Sperre zu ermöglichen, sollte der aktuelle Thread die Sperre so oft beenden, wie er in die Sperre gelangt ist.
Weitere Informationen finden Sie in den Hinweisen zu Lock.
Gilt für:
TryEnter(Int32)
- Quelle:
- Lock.cs
Versucht, die Sperre zu betreten, und wartet bei Bedarf auf die angegebene Anzahl von Millisekunden, bis die Sperre eingegeben werden kann.
public:
bool TryEnter(int millisecondsTimeout);
public bool TryEnter (int millisecondsTimeout);
member this.TryEnter : int -> bool
Public Function TryEnter (millisecondsTimeout As Integer) As Boolean
Parameter
- millisecondsTimeout
- Int32
Die Anzahl der Millisekunden, die gewartet werden sollen, bis die Sperre eingegeben werden kann. Geben Sie Timeout.Infinite (-1
) an, um unbegrenzt zu warten oder 0
nicht zu warten.
Gibt zurück
true
, wenn die Sperre vom aktuellen Thread eingegeben wurde; false
andernfalls .
Ausnahmen
millisecondsTimeout
ist kleiner als -1
.
Die Sperre hat die Grenze für wiederholte Einträge durch den aktuellen Thread erreicht. Der Grenzwert ist implementierungsdefiniert und soll so hoch sein, dass er in normalen Situationen nicht erreicht wird.
Hinweise
Wenn die Methode zurückgibt true
, ist der aktuelle Thread der einzige Thread, der die Sperre enthält. Wenn die Sperre nicht sofort eingegeben werden kann, wartet die Methode, bis die Sperre eingegeben werden kann oder bis das durch den millisecondsTimeout
Parameter angegebene Timeout abläuft. Wenn das Timeout vor dem Eingeben der Sperre abläuft, gibt die -Methode zurück false
. Wenn die Sperre bereits vom aktuellen Thread gehalten wird, wird die Sperre erneut eingegeben. Um die Sperre vollständig zu beenden und anderen Threads den Eintritt in die Sperre zu ermöglichen, sollte der aktuelle Thread die Sperre so oft beenden, wie er in die Sperre gelangt ist.
Weitere Informationen finden Sie in den Hinweisen zu Lock.
Gilt für:
TryEnter(TimeSpan)
- Quelle:
- Lock.cs
Versucht, die Sperre zu betreten, und wartet bei Bedarf, bis die Sperre eingegeben werden kann oder bis das angegebene Timeout abläuft.
public:
bool TryEnter(TimeSpan timeout);
public bool TryEnter (TimeSpan timeout);
member this.TryEnter : TimeSpan -> bool
Public Function TryEnter (timeout As TimeSpan) As Boolean
Parameter
- timeout
- TimeSpan
Eine TimeSpan , die die Anzahl von Millisekunden darstellt, die gewartet werden sollen, bis die Sperre eingegeben werden kann. Geben Sie einen Wert an, der Timeout.Infinite (-1
)-Millisekunden für unbegrenzte Wartezeiten 0
darstellt, oder einen Wert, der Millisekunden darstellt, um nicht zu warten.
Gibt zurück
true
, wenn die Sperre vom aktuellen Thread eingegeben wurde; false
andernfalls .
Ausnahmen
timeout
stellt nach der Konvertierung in einen ganzzahligen Millisekundenwert einen Wert dar, der kleiner als -1
Millisekunden oder größer als Int32.MaxValue Millisekunden ist.
Die Sperre hat die Grenze für wiederholte Einträge durch den aktuellen Thread erreicht. Der Grenzwert ist implementierungsdefiniert und soll so hoch sein, dass er in normalen Situationen nicht erreicht wird.
Hinweise
Wenn die Methode zurückgibt true
, ist der aktuelle Thread der einzige Thread, der die Sperre enthält. Wenn die Sperre nicht sofort eingegeben werden kann, wartet die Methode, bis die Sperre eingegeben werden kann oder bis die angegebene timeout
abläuft. Wenn das Timeout vor dem Eingeben der Sperre abläuft, gibt die -Methode zurück false
. Wenn die Sperre bereits vom aktuellen Thread gehalten wird, wird die Sperre erneut eingegeben. Um die Sperre vollständig zu beenden und anderen Threads den Eintritt in die Sperre zu ermöglichen, sollte der aktuelle Thread die Sperre so oft beenden, wie er in die Sperre gelangt ist.
Weitere Informationen finden Sie in den Hinweisen zu Lock.