System.Threading.Tests.ReaderWriterLockTests.TestReaderWriterLock.AcquireWriterLock C# (CSharp) Method

AcquireWriterLock() public method

public AcquireWriterLock ( int expectedFailureHResult ) : void
expectedFailureHResult int
return void
            public void AcquireWriterLock(int expectedFailureHResult = 0)
            {
                PerformLockAction(
                    expectedFailureHResult,
                    true /* isBlockingOperation */,
                    () => _rwl.AcquireWriterLock(GetTimeoutMilliseconds(expectedFailureHResult)),
                    () =>
                    {
                        if (_writerLevel == 0)
                        {
                            Assert.Equal(InvalidThreadID, _writerThreadID);
                            _writerThreadID = Environment.CurrentManagedThreadId;
                            ++_writerSeqNum;
                        }
                        else
                        {
                            Assert.Equal(Environment.CurrentManagedThreadId, _writerThreadID);
                        }
                        ++_writerLevel;
                    });
            }