ReaderWriterLockSlim.TryEnterReadLock Metódus
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Olvasási módban próbál meg belépni a zárolásba, és nem kötelező időtúllépést beállítani.
Túlterhelések
| Name | Description |
|---|---|
| TryEnterReadLock(Int32) |
Olvasási módban próbál meg belépni a zárolásba, és nem kötelező egész szám időtúllépést megadni. |
| TryEnterReadLock(TimeSpan) |
Olvasási módban próbál meg belépni a zárolásba, és nem kötelező időtúllépést beállítani. |
TryEnterReadLock(Int32)
Olvasási módban próbál meg belépni a zárolásba, és nem kötelező egész szám időtúllépést megadni.
public:
bool TryEnterReadLock(int millisecondsTimeout);
public bool TryEnterReadLock(int millisecondsTimeout);
member this.TryEnterReadLock : int -> bool
Public Function TryEnterReadLock (millisecondsTimeout As Integer) As Boolean
Paraméterek
- millisecondsTimeout
- Int32
A várakozni kívánt ezredmásodpercek száma, vagy -1 (Infinite) a határozatlan ideig történő várakozáshoz.
Válaszok
true ha a hívó szál olvasási módba lépett, ellenkező esetben false.
Kivételek
A RecursionPolicy tulajdonság az, NoRecursion és az aktuális szál már belépett a zárolásba.
-vagy-
A rekurziós szám meghaladná a számláló kapacitását. A korlát olyan nagy, hogy az alkalmazások soha nem találkozhatnak vele.
Az érték millisecondsTimeout negatív, de nem egyenlő Infinite (-1), ami az egyetlen megengedett negatív érték.
Az ReaderWriterLockSlim objektumot megsemmisítették.
Megjegyzések
Ha millisecondsTimeout 0 (nulla), ez a módszer ellenőrzi a zárolási állapotot, és azonnal visszaadja false , ha a kívánt állapot nem érhető el.
Egyszerre több szál is beléphet olvasási módba.
Ha egy vagy több szál írási módra vár, a metódust meghívó szál addig blokkolja a TryEnterReadLock metódust, amíg a szálak időtúllépést vagy írási módot nem adnak meg, majd kilépnek belőle, vagy amíg a hívó szál saját időtúllépési időköze el nem jár.
Note
Ha a zárolás lehetővé teszi a rekurziót, a zárolást olvasási módban beírt szálak rekurzív módon is beírhatják, még akkor is, ha más szálak írási módra várnak.
Az egyik szál frissíthető módban lehet, míg a többi szál olvasási módban van. Ha további szálak várnak a frissíthető mód megadására, és nincsenek olyan szálak, amelyek írási módba való belépésre várnak, a TryEnterReadLock metódust meghívó szálak azonnal olvasási módba lépnek, és nem tiltják le.
A következőre érvényes:
TryEnterReadLock(TimeSpan)
Olvasási módban próbál meg belépni a zárolásba, és nem kötelező időtúllépést beállítani.
public:
bool TryEnterReadLock(TimeSpan timeout);
public bool TryEnterReadLock(TimeSpan timeout);
member this.TryEnterReadLock : TimeSpan -> bool
Public Function TryEnterReadLock (timeout As TimeSpan) As Boolean
Paraméterek
- timeout
- TimeSpan
A várakozási időtartam, vagy -1 ezredmásodperc a határozatlan ideig történő várakozáshoz.
Válaszok
true ha a hívó szál olvasási módba lépett, ellenkező esetben false.
Kivételek
A RecursionPolicy tulajdonság az, NoRecursion és az aktuális szál már belépett a zárolásba.
-vagy-
A rekurziós szám meghaladná a számláló kapacitását. A korlát olyan nagy, hogy az alkalmazások soha nem találkozhatnak vele.
Az érték timeout negatív, de nem egyenlő -1 ezredmásodpercekkel, ami az egyetlen megengedett negatív érték.
-vagy-
Az érték timeout nagyobb, mint az Int32.MaxValue ezredmásodperc.
Az ReaderWriterLockSlim objektumot megsemmisítették.
Megjegyzések
Ha timeout 0 (nulla), ez a módszer ellenőrzi a zárolási állapotot, és azonnal visszaadja false , ha a kívánt állapot nem érhető el.
Egyszerre több szál is beléphet a zárolásba olvasási módban.
Ha egy vagy több szál várólistára kerül az írási mód megadásához, a metódusblokkokat hívó szál addig blokkolja TryEnterReadLock a metódust, amíg ezek a szálak időtúllépést vagy írási módot nem adnak meg, majd kilépnek belőle, vagy amíg a hívó szál saját időtúllépési időköze el nem jár.
Note
Ha a zárolás lehetővé teszi a rekurziót, a zárolást olvasási módban beírt szálak rekurzív módon is beírhatják, még akkor is, ha más szálak írási módra várnak.
Az egyik szál frissíthető módban lehet, míg a többi szál olvasási módban van. Ha további szálak várnak a frissíthető mód megadására, és nincsenek olyan szálak, amelyek írási módba való belépésre várnak, a TryEnterReadLock metódust meghívó szálak azonnal olvasási módba lépnek, és nem tiltják le.