C# Класс System.Threading.ReaderWriterLock

Наследование: System.Runtime.ConstrainedExecution.CriticalFinalizerObject
Показать файл Открыть проект Примеры использования класса

Открытые методы

Метод Описание
AcquireReaderLock ( System.TimeSpan timeout ) : void
AcquireReaderLock ( int millisecondsTimeout ) : void
AcquireWriterLock ( System.TimeSpan timeout ) : void
AcquireWriterLock ( int millisecondsTimeout ) : void
AnyWritersSince ( int seqNum ) : bool
DowngradeFromWriterLock ( LockCookie &lockCookie ) : void
ReaderWriterLock ( ) : System.Diagnostics
ReleaseLock ( ) : LockCookie
ReleaseReaderLock ( ) : void
ReleaseWriterLock ( ) : void
RestoreLock ( LockCookie &lockCookie ) : void
UpgradeToWriterLock ( System.TimeSpan timeout ) : LockCookie
UpgradeToWriterLock ( int millisecondsTimeout ) : LockCookie

Приватные методы

Метод Описание
GetCurrentThreadID ( ) : int
GetInvalidLockCookieException ( ) : ApplicationException
GetInvalidTimeoutException ( string parameterName ) : ArgumentOutOfRangeException
GetNotOwnerException ( ) : ApplicationException

The original code used an incorrect Exception.HResult for this exception. The Exception.HResult value was set to ERROR_NOT_OWNER without first converting that error code into an HRESULT. The same value is used here for compatibility.

GetOrCreateReaderEvent ( ) : ManualResetEventSlim
GetOrCreateWriterEvent ( ) : AutoResetEvent
GetTimeoutException ( ) : ApplicationException
RecoverLock ( LockCookie &lockCookie, LockCookieFlags flags ) : void

Helper function that restores the lock to the original state indicated by parameters

ReleaseEvents ( ) : void
ToTimeoutMilliseconds ( System.TimeSpan timeout ) : int
TryGetOrCreateReaderEvent ( ) : ManualResetEventSlim
TryGetOrCreateWriterEvent ( ) : AutoResetEvent
YieldProcessor ( ) : bool

Описание методов

AcquireReaderLock() публичный Метод

public AcquireReaderLock ( System.TimeSpan timeout ) : void
timeout System.TimeSpan
Результат void

AcquireReaderLock() публичный Метод

public AcquireReaderLock ( int millisecondsTimeout ) : void
millisecondsTimeout int
Результат void

AcquireWriterLock() публичный Метод

public AcquireWriterLock ( System.TimeSpan timeout ) : void
timeout System.TimeSpan
Результат void

AcquireWriterLock() публичный Метод

public AcquireWriterLock ( int millisecondsTimeout ) : void
millisecondsTimeout int
Результат void

AnyWritersSince() публичный Метод

public AnyWritersSince ( int seqNum ) : bool
seqNum int
Результат bool

DowngradeFromWriterLock() публичный Метод

public DowngradeFromWriterLock ( LockCookie &lockCookie ) : void
lockCookie LockCookie
Результат void

ReaderWriterLock() публичный Метод

public ReaderWriterLock ( ) : System.Diagnostics
Результат System.Diagnostics

ReleaseLock() публичный Метод

public ReleaseLock ( ) : LockCookie
Результат LockCookie

ReleaseReaderLock() публичный Метод

public ReleaseReaderLock ( ) : void
Результат void

ReleaseWriterLock() публичный Метод

public ReleaseWriterLock ( ) : void
Результат void

RestoreLock() публичный Метод

public RestoreLock ( LockCookie &lockCookie ) : void
lockCookie LockCookie
Результат void

UpgradeToWriterLock() публичный Метод

public UpgradeToWriterLock ( System.TimeSpan timeout ) : LockCookie
timeout System.TimeSpan
Результат LockCookie

UpgradeToWriterLock() публичный Метод

public UpgradeToWriterLock ( int millisecondsTimeout ) : LockCookie
millisecondsTimeout int
Результат LockCookie