ReaderWriterLockSlim.IsUpgradeableReadLockHeld Property

Definition

Gets a value that indicates whether the current thread has entered the lock in upgradeable mode.

public:
 property bool IsUpgradeableReadLockHeld { bool get(); };
public bool IsUpgradeableReadLockHeld { get; }
member this.IsUpgradeableReadLockHeld : bool
Public ReadOnly Property IsUpgradeableReadLockHeld As Boolean

Property Value

Boolean

true if the current thread has entered upgradeable mode; otherwise, false.

Examples

The following example shows how to use the IsUpgradeableReadLockHeld property to generate an assert if the current thread has entered upgradeable mode unexpectedly.

using (ReaderWriterLockSlim rwLock = new ReaderWriterLockSlim()) {
Using rwLock As New ReaderWriterLockSlim()
Debug.Assert(!rwLock.IsUpgradeableReadLockHeld,
    String.Format("Thread {0} has entered the upgradeable read lock while MyFunction is still executing.",
                  Thread.CurrentThread.ManagedThreadId));
Debug.Assert(Not rwLock.IsUpgradeableReadLockHeld, _
    String.Format("Thread {0} has entered the upgradeable read lock while MyFunction is still executing.", _
                  Thread.CurrentThread.ManagedThreadId))

Remarks

This property is intended for use in asserts or for other debugging purposes. Do not use it to control the flow of program execution.

Applies to