SpinLock.TryEnter Methode

Definitie

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, lockTaken betrouwbaar kan worden onderzocht om te bepalen of de vergrendeling is verkregen.

TryEnter(Int32, Boolean)

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.

TryEnter(TimeSpan, Boolean)

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.

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

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

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

Van toepassing op