Returns a read and write lock
Syntax
Visual Basic (Declaration) | |
---|
Public Overloads Function Write() As WriteLock |
Example
Library/Library.Test/LockingTests/TestDebugLocking.cs
C# | Copy Code |
---|
using (DebugLocking<SimpleReadWriteLocking> l = new DebugLocking<SimpleReadWriteLocking>(
false, 0, 1, false, 1))
{
Assert.IsFalse(l.CaptureStack);
Assert.AreEqual(0, l.CurrentWriterCount);
Assert.AreEqual(0, l.LocalWriterCount);
Assert.AreEqual(0, l.MaxWriterCount);
using (l.Write())
{
Assert.AreEqual(1, l.CurrentWriterCount);
Assert.AreEqual(1, l.LocalWriterCount);
using (l.Write(0))
{
Assert.AreEqual(2, l.CurrentWriterCount);
Assert.AreEqual(2, l.LocalWriterCount);
}
}
Assert.AreEqual(0, l.CurrentWriterCount);
Assert.AreEqual(0, l.LocalWriterCount);
Assert.AreEqual(2, l.MaxWriterCount);
} |
VB.NET | Copy Code |
---|
Using l As New DebugLocking(Of SimpleReadWriteLocking)(False, 0, 1, False, 1)
Assert.IsFalse(l.CaptureStack)
Assert.AreEqual(0, l.CurrentWriterCount)
Assert.AreEqual(0, l.LocalWriterCount)
Assert.AreEqual(0, l.MaxWriterCount)
Using l.Write()
Assert.AreEqual(1, l.CurrentWriterCount)
Assert.AreEqual(1, l.LocalWriterCount)
Using l.Write(0)
Assert.AreEqual(2, l.CurrentWriterCount)
Assert.AreEqual(2, l.LocalWriterCount)
End Using
End Using
Assert.AreEqual(0, l.CurrentWriterCount)
Assert.AreEqual(0, l.LocalWriterCount)
Assert.AreEqual(2, l.MaxWriterCount)
End Using |
Requirements
Target Platforms: Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7
See Also