ReaderWriterLockSlim Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет блокировку, используемую для управления доступом к ресурсу, которая позволяет нескольким потокам производить считывание или получать монопольный доступ на запись.
public ref class ReaderWriterLockSlim : IDisposable
public class ReaderWriterLockSlim : IDisposable
type ReaderWriterLockSlim = class
interface IDisposable
Public Class ReaderWriterLockSlim
Implements 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) |
Пытается войти в блокировку в режиме записи с необязательным указанием времени ожидания. |
Применяется к
Потокобезопасность
Данный тип потокобезопасен.