SpinLock.TryEnter Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Pogingen om de vergrendeling op een betrouwbare manier te verkrijgen, zodat zelfs als er een uitzondering optreedt binnen de methodeaanroep, lockTaken betrouwbaar kan worden onderzocht om te bepalen of de vergrendeling is verkregen.
Overloads
| Name | Description |
|---|---|
| TryEnter(Boolean) |
Pogingen om de vergrendeling op een betrouwbare manier te verkrijgen, zodat zelfs als er een uitzondering optreedt binnen de methodeaanroep, |
| TryEnter(Int32, Boolean) |
Pogingen om de vergrendeling op een betrouwbare manier te verkrijgen, zodat zelfs als er een uitzondering optreedt binnen de methodeaanroep, |
| TryEnter(TimeSpan, Boolean) |
Pogingen om de vergrendeling op een betrouwbare manier te verkrijgen, zodat zelfs als er een uitzondering optreedt binnen de methodeaanroep, |
TryEnter(Boolean)
- Bron:
- SpinLock.cs
- Bron:
- SpinLock.cs
- Bron:
- SpinLock.cs
- Bron:
- SpinLock.cs
- Bron:
- SpinLock.cs
Pogingen om de vergrendeling op een betrouwbare manier te verkrijgen, zodat zelfs als er een uitzondering optreedt binnen de methodeaanroep, lockTaken betrouwbaar kan worden onderzocht om te bepalen of de vergrendeling is verkregen.
public:
void TryEnter(bool % lockTaken);
public void TryEnter(ref bool lockTaken);
member this.TryEnter : bool -> unit
Public Sub TryEnter (ByRef lockTaken As Boolean)
Parameters
- lockTaken
- Boolean
Waar als de vergrendeling wordt verkregen; anders, onwaar.
lockTaken moet worden geïnitialiseerd op false voordat u deze methode aanroept.
Uitzonderingen
Het lockTaken argument moet worden geïnitialiseerd op false voordat u TryEnter aanroept.
Het bijhouden van het eigendom van threads is ingeschakeld en de huidige thread heeft deze vergrendeling al verkregen.
Opmerkingen
In tegenstelling tot Enter, zal TryEnter niet blokkeren totdat de vergrendeling beschikbaar is. Als de vergrendeling niet beschikbaar is wanneer TryEnter wordt aangeroepen, keert deze onmiddellijk terug zonder verder draaien.
Zie ook
- SpinLock
- Procedure: SpinLock gebruiken voor Low-Level-synchronisatie
- Procedure: Thread-Tracking-modus inschakelen in SpinLock
Van toepassing op
TryEnter(Int32, Boolean)
- Bron:
- SpinLock.cs
- Bron:
- SpinLock.cs
- Bron:
- SpinLock.cs
- Bron:
- SpinLock.cs
- Bron:
- SpinLock.cs
Pogingen om de vergrendeling op een betrouwbare manier te verkrijgen, zodat zelfs als er een uitzondering optreedt binnen de methodeaanroep, lockTaken betrouwbaar kan worden onderzocht om te bepalen of de vergrendeling is verkregen.
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)
Parameters
- millisecondsTimeout
- Int32
Het aantal milliseconden dat moet worden gewacht, of Infinite (-1) om voor onbepaalde tijd te wachten.
- lockTaken
- Boolean
Waar als de vergrendeling wordt verkregen; anders, onwaar.
lockTaken moet worden geïnitialiseerd op false voordat u deze methode aanroept.
Uitzonderingen
millisecondsTimeout is een ander negatief getal dan -1, dat een oneindige time-out vertegenwoordigt.
Het lockTaken argument moet worden geïnitialiseerd op false voordat u TryEnter aanroept.
Het bijhouden van het eigendom van threads is ingeschakeld en de huidige thread heeft deze vergrendeling al verkregen.
Opmerkingen
In tegenstelling tot Enter, zal TryEnter niet voor onbepaalde tijd blokkeren totdat de vergrendeling beschikbaar is. De vergrendeling wordt geblokkeerd totdat de vergrendeling beschikbaar is of totdat de millisecondsTimeout vergrendeling is verlopen.
Zie ook
- SpinLock
- Procedure: SpinLock gebruiken voor Low-Level-synchronisatie
- Procedure: Thread-Tracking-modus inschakelen in SpinLock
Van toepassing op
TryEnter(TimeSpan, Boolean)
- Bron:
- SpinLock.cs
- Bron:
- SpinLock.cs
- Bron:
- SpinLock.cs
- Bron:
- SpinLock.cs
- Bron:
- SpinLock.cs
Pogingen om de vergrendeling op een betrouwbare manier te verkrijgen, zodat zelfs als er een uitzondering optreedt binnen de methodeaanroep, lockTaken betrouwbaar kan worden onderzocht om te bepalen of de vergrendeling is verkregen.
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)
Parameters
- timeout
- TimeSpan
Een TimeSpan die het aantal milliseconden aangeeft dat moet worden gewacht, of een TimeSpan waarde die -1 milliseconden vertegenwoordigt om voor onbepaalde tijd te wachten.
- lockTaken
- Boolean
Waar als de vergrendeling wordt verkregen; anders, onwaar.
lockTaken moet worden geïnitialiseerd op false voordat u deze methode aanroept.
Uitzonderingen
timeout is een ander negatief getal dan -1 milliseconden, wat een oneindige time-out vertegenwoordigt, of time-out groter is dan int32.MaxValue milliseconden.
Het lockTaken argument moet worden geïnitialiseerd op false voordat u TryEnter aanroept.
Het bijhouden van het eigendom van threads is ingeschakeld en de huidige thread heeft deze vergrendeling al verkregen.
Opmerkingen
In tegenstelling tot Enter, zal TryEnter niet voor onbepaalde tijd blokkeren totdat de vergrendeling beschikbaar is. De vergrendeling wordt geblokkeerd totdat de vergrendeling beschikbaar is of totdat de timeout vergrendeling is verlopen.
Zie ook
- SpinLock
- Procedure: SpinLock gebruiken voor Low-Level-synchronisatie
- Procedure: Thread-Tracking-modus inschakelen in SpinLock