The exception that is thrown when recursive entry into a lock is not compatible with the recursion policy for the lock.
See Also: LockRecursionException Members
System.Threading.LockRecursionException is thrown for several reasons, including the following:
If a thread tries to enter an instance of System.Threading.ReaderWriterLockSlim recursively, but the instance does not support recursion.
If a thread tries to enter a System.Threading.ReaderWriterLockSlim instance in write mode or upgradeable mode when the thread initially entered the lock in read mode. This represents a potential deadlock and therefore is not allowed.
If allowing one more level of recursion would exceed the maximum value for the internal storage counter used to track recursions. This limit is so large that applications should never encounter it.