事件对象的方法
,可以调用Windows API中的CreateEvent。它可以创建一个有名的或匿名的事件对象,函数原型如下HANDLE CreateEvent( LPSECURITY_ATTRIBUTESlpEventAttributes,
BOOLbManualReset,
BOOLbInitialState,
LPCTSTR lpName
);
第一参数lpEventAttributes是一个指向SECURITY_ATTRIBUTES结构指针,由它决定该函数返回的句柄是否能够被子进程继承,如果为NULL,则不能被继承。通常指定为NULL(即默认的安全机制)。
第二参数bManualReset,若指定为TRUE,则创建一个人工重置的事件对象,此时可以利用函数
BOOL ResetEvent(HANDLE hEvent)人工重置其状态为无信号的;若指定为FALSE,系统将创建一个自动重置对象,系统将自动将其状态置为无信号的。
第三参数 bInitialState,若为TRUE则初始化创建的事件对象为有信号的(signaled),否则将创建的事件对象初始化为无信号的(nonsignaled)。
第四参数 lpName, 若指定为NULL,则创建一个匿名的事件对象。
返回值,如果函数成功,将返回一个该函数创建的事件对象的句柄。如果创建的事件对象是有名的,并且在调用该函数前,已经有一个同名的事件对象创建了,那么该函数将返回一个指向已存在的事件对象的句柄,并且调用GetLastError(void)函数时,将返回ERROR_ALREADY_EXISTS;如果函数调用失败,那么它将返回NULL。