CEvent::CEvent

构造一个名为或未命名 CEvent 对象。

CEvent( 
   BOOL bInitiallyOwn = FALSE, 
   BOOL bManualReset = FALSE, 
   LPCTSTR lpszName = NULL, 
   LPSECURITY_ATTRIBUTES lpsaAttribute = NULL  
);

参数

  • bInitiallyOwn
    TRUE、线程 CMultilock 的或 CSingleLock 对象中有效。 否则,所有线程需要对该资源必须等待访问。

  • bManualReset
    如果 TRUE,指定事件对象是一种手动事件,否则事件对象是一个自动事件。

  • lpszName
    CEvent 对象的名称。 如果要使用对象进程边界,必须提供。 如果该名称与现有操作,该构造函数生成引用该名称的事件的新 CEvent 对象。 如果该名称与不是事件的现有的同步对象,该构造将失败。 如果 NULL,该名称将为空。

  • lpsaAttribute
    事件对象的安全特性。 有关此结构的完整说明,请参见。Windows SDK的 SECURITY_ATTRIBUTES

备注

访问或释放 CEvent 对象,创建 CMultiLockCSingleLock 对象并调用其 锁定unlock 成员函数。

若要更改一 CEvent 对象的状态为终止(线程不必等待),请调用 SetEventPulseEvent。 若要设置一 CEvent 对象的状态为nonsignaled (线程必须等待),请调用 ResetEvent

安全说明安全说明

在创建 CEvent 对象之后,使用 GetLastError 确保mutex不存在。如果mutex意外存在时,它可能指示同名的欺诈性处理强占并可能打算恶意使用mutex。在这种情况下,建议的值安全程序关闭处理和继续,就象在创建对象的一个失败。

要求

Header: afxmt.h

请参见

参考

CEvent Class

层次结构图