ReaderWriterLockSlim Класс

Определение

Представляет блокировку, используемую для управления доступом к ресурсу, которая позволяет нескольким потокам производить считывание или получать монопольный доступ на запись.

public class ReaderWriterLockSlim : IDisposable
Наследование
ReaderWriterLockSlim
Реализации

Комментарии

Дополнительные сведения об этом API см. в разделе Дополнительные примечания API для ReaderWriterLockSlim.

Конструкторы

ReaderWriterLockSlim()

Инициализирует новый экземпляр класса ReaderWriterLockSlim значениями свойств по умолчанию.

ReaderWriterLockSlim(LockRecursionPolicy)

Инициализирует новый экземпляр класса ReaderWriterLockSlim с указанием политики рекурсии блокировок.

Свойства

CurrentReadCount

Получает общее количество уникальных потоков, вошедших в блокировку в режиме чтения.

IsReadLockHeld

Получает значение, указывающее, вошел ли текущий поток в блокировку в режиме чтения.

IsUpgradeableReadLockHeld

Возвращает значение, указывающее, вошел ли текущий поток в блокировку в обновляемом режиме.

IsWriteLockHeld

Получает значение, указывающее, вошел ли текущий поток в блокировку в режиме записи.

RecursionPolicy

Возвращает значение, указывающее политику рекурсии для текущего объекта ReaderWriterLockSlim.

RecursiveReadCount

Получает количество раз, которые текущий поток входил в блокировку в режиме чтения, как показатель рекурсии.

RecursiveUpgradeCount

Получает количество раз, которые текущий поток входил в блокировку в обновляемом режиме, как показатель рекурсии.

RecursiveWriteCount

Получает количество раз, которые текущий поток входил в блокировку в режиме записи, как показатель рекурсии.

WaitingReadCount

Получает общее количество потоков, ожидающих вхождения в блокировку в режиме чтения.

WaitingUpgradeCount

Получает общее количество потоков, ожидающих входа в блокировку в обновляемом режиме.

WaitingWriteCount

Получает общее количество потоков, ожидающих входа в блокировку в режиме записи.

Методы

Dispose()

Освобождает все ресурсы, используемые текущим экземпляром класса ReaderWriterLockSlim.

EnterReadLock()

Пытается выполнить вход в блокировку в режиме чтения.

EnterUpgradeableReadLock()

Пытается выполнить вход в блокировку в обновляемом режиме.

EnterWriteLock()

Пытается выполнить вход в блокировку в режиме записи.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
ExitReadLock()

Уменьшает счетчик глубины рекурсии для режима чтения и выходит из режима чтения, если счетчик принял значение 0 (нуль).

ExitUpgradeableReadLock()

Уменьшает счетчик глубины рекурсии для обновляемого режима и выходит из обновляемого режима, если счетчик принял значение 0 (нуль).

ExitWriteLock()

Уменьшает счетчик глубины рекурсии для режима записи и выходит из режима записи, если счетчик принял значение 0 (нуль).

GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)
TryEnterReadLock(Int32)

Пытается войти в блокировку в режиме чтения с необязательным указанием времени ожидания целым числом.

TryEnterReadLock(TimeSpan)

Пытается войти в блокировку в режиме чтения с необязательным указанием времени ожидания.

TryEnterUpgradeableReadLock(Int32)

Пытается войти в блокировку в обновляемом режиме с необязательным указанием времени ожидания.

TryEnterUpgradeableReadLock(TimeSpan)

Пытается войти в блокировку в обновляемом режиме с необязательным указанием времени ожидания.

TryEnterWriteLock(Int32)

Пытается войти в блокировку в режиме записи с необязательным указанием времени ожидания.

TryEnterWriteLock(TimeSpan)

Пытается войти в блокировку в режиме записи с необязательным указанием времени ожидания.

Применяется к

Потокобезопасность

Данный тип потокобезопасен.