ReaderWriterLockSlim.TryEnterReadLock Metódus

Definíció

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.

A következőre érvényes: