SpinLock.TryEnter Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Pokusy o získání zámku spolehlivým způsobem, tak, aby i v případě, že dojde k výjimce v rámci volání metody, lze spolehlivě prozkoumat, lockTaken
zda byl zámek získán.
Přetížení
TryEnter(Boolean) |
Pokusy o získání zámku spolehlivým způsobem, tak, aby i v případě, že dojde k výjimce v rámci volání metody, lze spolehlivě prozkoumat, |
TryEnter(Int32, Boolean) |
Pokusy o získání zámku spolehlivým způsobem, tak, aby i v případě, že dojde k výjimce v rámci volání metody, lze spolehlivě prozkoumat, |
TryEnter(TimeSpan, Boolean) |
Pokusy o získání zámku spolehlivým způsobem, tak, aby i v případě, že dojde k výjimce v rámci volání metody, lze spolehlivě prozkoumat, |
TryEnter(Boolean)
- Zdroj:
- SpinLock.cs
- Zdroj:
- SpinLock.cs
- Zdroj:
- SpinLock.cs
Pokusy o získání zámku spolehlivým způsobem, tak, aby i v případě, že dojde k výjimce v rámci volání metody, lze spolehlivě prozkoumat, lockTaken
zda byl zámek získán.
public:
void TryEnter(bool % lockTaken);
public void TryEnter (ref bool lockTaken);
member this.TryEnter : bool -> unit
Public Sub TryEnter (ByRef lockTaken As Boolean)
Parametry
- lockTaken
- Boolean
True Pokud zámek je získán; jinak false.
lockTaken
před voláním této metody musí být inicializována na hodnotu false.
Výjimky
Argument lockTaken
musí být inicializován na false před voláním TryEnter.
Sledování vlastnictví vlákna je povoleno a aktuální vlákno již získalo tento zámek.
Poznámky
Na rozdíl od Enterpříkazu TryEnter neblokuje čekání na dostupnost zámku. Pokud zámek není k dispozici při zavolání tryEnter, vrátí se okamžitě bez dalšího otáčení.
Viz také
- SpinLock
- Postupy: Použití funkce SpinLock k synchronizaci Low-Level
- Postupy: Povolení režimu Thread-Tracking ve spinlocku
Platí pro
TryEnter(Int32, Boolean)
- Zdroj:
- SpinLock.cs
- Zdroj:
- SpinLock.cs
- Zdroj:
- SpinLock.cs
Pokusy o získání zámku spolehlivým způsobem, tak, aby i v případě, že dojde k výjimce v rámci volání metody, lze spolehlivě prozkoumat, lockTaken
zda byl zámek získán.
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)
Parametry
- millisecondsTimeout
- Int32
Počet milisekund, které se mají čekat, nebo Infinite (-1) čekání na neomezenou dobu.
- lockTaken
- Boolean
True Pokud zámek je získán; jinak false.
lockTaken
před voláním této metody musí být inicializována na hodnotu false.
Výjimky
millisecondsTimeout
je záporné číslo jiné než -1, které představuje nekonečný časový limit.
Argument lockTaken
musí být inicializován na false před voláním TryEnter.
Sledování vlastnictví vlákna je povoleno a aktuální vlákno již získalo tento zámek.
Poznámky
Na rozdíl od Enterfunkce TryEnter neblokuje čekání na dostupnost zámku donekonečna. Bude se blokovat, dokud nebude zámek k dispozici nebo dokud millisecondsTimeout
nevypršela platnost zámku.
Viz také
- SpinLock
- Postupy: Použití funkce SpinLock k synchronizaci Low-Level
- Postupy: Povolení režimu Thread-Tracking ve spinlocku
Platí pro
TryEnter(TimeSpan, Boolean)
- Zdroj:
- SpinLock.cs
- Zdroj:
- SpinLock.cs
- Zdroj:
- SpinLock.cs
Pokusy o získání zámku spolehlivým způsobem, tak, aby i v případě, že dojde k výjimce v rámci volání metody, lze spolehlivě prozkoumat, lockTaken
zda byl zámek získán.
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)
Parametry
- timeout
- TimeSpan
A TimeSpan , který představuje počet milisekund čekání, nebo , TimeSpan který představuje -1 milisekund čekání neomezeně.
- lockTaken
- Boolean
True Pokud zámek je získán; jinak false.
lockTaken
před voláním této metody musí být inicializována na hodnotu false.
Výjimky
timeout
je záporné číslo jiné než -1 milisekund, které představuje nekonečný časový limit nebo je časový limit větší než Int32.MaxValue milisekund.
Argument lockTaken
musí být inicializován na false před voláním TryEnter.
Sledování vlastnictví vlákna je povoleno a aktuální vlákno již získalo tento zámek.
Poznámky
Na rozdíl od Enterfunkce TryEnter neblokuje čekání na dostupnost zámku donekonečna. Bude se blokovat, dokud nebude zámek k dispozici nebo dokud timeout
nevypršela platnost zámku.
Viz také
- SpinLock
- Postupy: Použití funkce SpinLock k synchronizaci Low-Level
- Postupy: Povolení režimu Thread-Tracking ve spinlocku