ReaderWriterLockSlim 类

定义

表示用于管理对资源的访问的锁,允许多个线程读取或独占访问写入。

public ref class ReaderWriterLockSlim : IDisposable
public class ReaderWriterLockSlim : IDisposable
type ReaderWriterLockSlim = class
    interface IDisposable
Public Class ReaderWriterLockSlim
Implements IDisposable
继承
ReaderWriterLockSlim
实现

注解

有关此 API 的详细信息,请参阅 ReaderWriterLockSlim 的补充 API 备注

构造函数

名称 说明
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)

尝试在写入模式下输入锁,并显示可选的超时。

适用于

线程安全性

此类型是线程安全的。