关于CreateMutex函数

luckyboy1979 2005-05-25 09:00:04
createMutex的第二个参数BOOL bInitialOwner,mutex的初始拥有者,是什么意思?看了帮助文件,不理解。
...全文
378 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
luckyboy1979 2005-05-26
  • 打赏
  • 举报
回复
我试了一下,设为FALSE,一个进程的所有线程都能拥有该mutex;而设为TRUE,只是创建该mutex的线程能拥有该mutex;如果要跨进程使用也要设为FALSE,是这样的吗?
luckyboy1979 2005-05-25
  • 打赏
  • 举报
回复
bInitialOwner Long:
如创建进程希望立即拥有互斥体,则设为TRUE。一个互斥体同时只能由一个线程拥有 。
如果互斥体在主线程莉创建,那么为TRUE,该进程的其他线程就不能用有这个互斥体了?
luckyboy1979 2005-05-25
  • 打赏
  • 举报
回复
就是看不明白啊!知道的讲一下。
jerry 2005-05-25
  • 打赏
  • 举报
回复
这个参数指出创建的时候是不是要获取这个互拆量.相当于:

HMUTEX hm = CreateMetuex(NULL, FALSE, NULL);

WaitForSingleObject(hm, 0);

vick791003 2005-05-25
  • 打赏
  • 举报
回复
bInitialOwner Long:
如创建进程希望立即拥有互斥体,则设为TRUE。一个互斥体同时只能由一个线程拥有

lpName String:
指定互斥体对象的名字。用vbNullString创建一个未命名的互斥体对象。如已经存在拥有这个名字的一个事件,则打开现有的已命名互斥体。这个名字可能不与现有的事件、信号机、可等待计时器或文件映射相符

lpMutexAttributes SECURITY_ATTRIBUTES:
指定一个SECURITY_ATTRIBUTES结构,或传递零值(将参数声明为ByVal As Long,并传递零值),表示使用不允许继承的默认描述符

创建一个互斥体,比如检查当前应用程序是不是有实例在运行等
idAnts 2005-05-25
  • 打赏
  • 举报
回复
你再看看下面的remarks,里面有解释。

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧