RecursionPolicy Property

ReaderWriterLockSlim.RecursionPolicy Property


Gets a value that indicates the recursion policy for the current ReaderWriterLockSlim object.

Namespace:   System.Threading
Assembly:  System.Core (in System.Core.dll)

public LockRecursionPolicy RecursionPolicy { get; }

Property Value

Type: System.Threading.LockRecursionPolicy

One of the enumeration values that specifies the lock recursion policy.

Recursion policy determines the restrictions on threads that enter the lock more than once. For example, if a lock was created with LockRecursionPolicy.NoRecursion and a thread has entered the lock in read mode, LockRecursionException is thrown if the thread tries to reenter the lock in read mode.


A thread in upgradeable mode can upgrade to write mode or downgrade to read mode regardless of the lock recursion policy setting.

Regardless of recursion policy, a thread that initially entered read mode is not allowed to upgrade to upgradeable mode or write mode, because that pattern creates a strong probability of deadlocks.

For more information about recursion policy and its effects, see the LockRecursionPolicy enumeration and the ReaderWriterLockSlim class.

Universal Windows Platform
Available since 4.5
.NET Framework
Available since 3.5
Portable Class Library
Supported in: portable .NET platforms
Windows Phone Silverlight
Available since 8.0
Windows Phone
Available since 8.1
Return to top
© 2015 Microsoft