.NET Framework Class Library |
SpinLock..::.TryEnter Method (Boolean%) |
SpinLock Structure See Also Send Feedback |
Attempts to acquire the lock in a reliable manner, such that even if an exception occurs within
the method call, lockTaken can be examined reliably to determine whether the
lock was acquired.
Namespace:
System.Threading
Assembly:
System.Threading (in System.Threading.dll)
Syntax
Visual Basic (Declaration) |
---|
Public Sub TryEnter ( _ ByRef lockTaken As Boolean _ ) |
C# |
---|
public void TryEnter( ref bool lockTaken ) |
Parameters
- lockTaken
- Type:
System..::.Boolean
%
True if the lock is acquired; otherwise, false. lockTaken must be initialized to false prior to calling this method.
Remarks
Unlike Enter(Boolean%), TryEnter will not block waiting for the lock to be available. If the
lock is not available when TryEnter is called, it will return immediately without any further
spinning.
Exceptions
Exception | Condition |
---|---|
System.Threading..::.LockRecursionException | Thread ownership tracking is enabled, and the current thread has already acquired this lock. |
System..::.ArgumentException | The lockTaken argument must be initialized to false prior to calling TryEnter. |