关于windows内核下的读写锁

ERESOURCE对象-》》相当于读写锁,即用于同时只能有一个WRITER写入,多个READER读的情况:

ExInitializeResourceLite 初始化一个ERESOURCE对象;

ExAcquireResourceExclusiveLite 用于获取ERESOURCE(写访问);

ExAcquireResourceSharedLite 用于获取ERESOURCE(读访问);

ExReleaseResourceLite用于释放ERESOURCE;


ERESOURCE HashResource = {0};


ExInitializeResourceLite( &HashResource );

ExAcquireResourceExclusiveLite( &HashResource, TRUE );
//写访问
ExReleaseResourceLite( &HashResource );


ExAcquireResourceSharedLite( &HashResource, TRUE );

//读访问

ExReleaseResourceLite( &HashResource );


NTSTATUS ExReinitializeResourceLite(
  _Inout_  PERESOURCE Resource
);

Parameters

Resource [in, out]

A pointer to the caller-supplied resource variable to be reinitialized.

Return value

ExReinitializeResourceLite returns STATUS_SUCCESS.

Version

Available in Windows 2000 and later versions of Windows.

Header

Wdm.h (include Wdm.h, Ntddk.h, or Ntifs.h)

Library

Contained in Ntoskrnl.lib.

IRQL

<= DISPATCH_LEVEL

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值