SpinLock(Boolean) Constructor 
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Initializes a new instance of the SpinLock structure with the option to track thread IDs to improve debugging.
public:
 SpinLock(bool enableThreadOwnerTracking);public SpinLock(bool enableThreadOwnerTracking);new System.Threading.SpinLock : bool -> System.Threading.SpinLockPublic Sub New (enableThreadOwnerTracking As Boolean)Parameters
- enableThreadOwnerTracking
- Boolean
Whether to capture and use thread IDs for debugging purposes.
Examples
The following example demonstrates how a SpinLock may be used.
// C#
public class MyType
{
    private SpinLock _spinLock = new SpinLock();
    public void DoWork()
    {
        bool lockTaken = false;
        try
        {
           _spinLock.Enter(ref lockTaken);
           // do work here protected by the lock
        }
        finally
        {
            if (lockTaken) _spinLock.Exit();
        }
    }
}
' Visual Basic
Class MyType
   Private _spinLock As New SpinLock()
   Public Sub DoWork()
      Dim lockTaken As Boolean = False
      Try
         _spinLock.Enter(lockTaken)
         ' do work here protected by the lock
      Finally
         If lockTaken Then _spinLock.Exit()
      End Try
   End Sub
End Class
Remarks
The parameterless constructor for SpinLock tracks thread ownership.