windows互斥量的使用

windows互斥量的使用

在这里插入图片描述


1、关于实现线程之间互斥

由于不同进程、线程之间共享变量、内存等,为了避免读写竞争导致的异常。需要对共享内容进行加锁。这里的把互斥源当成锁比较好理解。

2、实现步骤

  • 第一步:创建一个指向锁的句柄
  • 第二步:等待获取锁
  • 第三步:获取锁后,进行相关的处理
  • 第四步:释放锁
  • 第五步:释放指向锁的句柄

3、具体实现使用的函数

  • 第一步:CreateMutexW(CreateMutex)

    该函数返回以个指向互斥源的句柄。也就是指向锁的句柄。如果创建失败则返回NULL。多次执行该创建语句,则返回指向所的句柄。通过GetLastError可以获取ERROR_ALREADY_EXISTS的消息。

    其中bInitialOwner = true :创建的句柄,即拥有了该互斥源。需要有releadMutex相对应。再次执行该值为true的createMutex函数的话,不再获取该互斥源。

    其中bInitialOwner = false:创建的句柄,不拥有互斥源(锁)。

    lpMutexAttributes = NULL,使用默认的安全模式。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

欧阳小伙

您的打赏是我创作的:最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值