CreateEvent-函数用法
CreateEvent-函数用法
函数用法 函数用法函数功能描述创建或打开一个命名的或无名的事件对象函数原型 (Sc++ createeventc++ createeventCreateEvent-函数用法,// 安全属性BOOLc++ createeventCreateEvent-函数用法,// 复位方式 BOOL,// 初始状态 // 对象名称);参数一个指向 结构的指针确定返回的句柄是否可被子进程继承。如果 是 NULL此句柄不能被继承。 NT/2000 的结构中的成员为新的事件指定了一个安全符。如果 是 NULL事件将获得一个默认的安全符。指定将事件对象创建成手动复原还是自动复原。如果是 TRUE那么必须用 函数来手工将事件的状态复原到无信号状态。如果设置为 FALSE当事件被一个等待线程释放以后系统将会自动将事件状态复原为无信号状态。 指定事件对象的初始状态。如果为 TRUE初始状态为有信号状态否则为无信号状态。指定事件的对象的名称是一个以 0 结束的字符串指针。名称的字符格式限定在 之内。名字是对大小写敏感的。如果 指定的名字与一个存在的命名的事件对象的名称相同函数将请求 来访问存在的对象。这时候由于 和 参数已经在创建事件的进程中设置这两个参数将被忽略。如果 是参数不是 NULL它将确定此句柄是否可以被继承但是其安全描述符成员将被忽略。如果 为 NULL将创建一个无名的事件对象。如果 的和一个存在的信号、互斥、等待计时器、作业或者是文件映射对象名称相同函数将会失败在 函数中将返回。造成这种现象的原因是这些对象共享同一个命名空间。终端服务( )名称中可以加入"/"或是"Local/"的前缀这样可以明确的将对象创建在全局的或事务的命名空间。名称的其它部分除了反斜杠(/)可以使用任意字符。详细内容可参考 Name 。 2000在 2000 系统中没有终端服务运行"/"和"Local/"前缀将被忽略。名称的其它部分除了反斜杠(/)可以使用任意字符。 NT 4.0 以及早期版本, 95/98名称中除了反斜杠(/)可以使用任意字符。返回值如果函数调用成功函数返回事件对象的句柄。如果对于命名的对象 在函数调用前已经被创建 函数将返回存在的事件对象的句柄 而且在 函数中返回 。如果函数失败函数返回值为 NULL如果需要获得详细的错误信息需要调用 。备注调用 函数返回的句柄该句柄具有 权限去访问新的事件对象 同时它可以在任何有此事件对象句柄的函数中使用。在调用的过程中所有线程都可以在一个等待函数中指定事件对象句柄。当指定的对象的状态被置为有信号状态时单对象等待函数将返回。对于多对象等待函数可以指定为任意或所有指定的对象被置为有信号状态。当等待函数返回时等待线程将被释放去继续运行。 初始状态在 参数中进行设置。 使用 函数将事件对象的状态置为有信号状态。 使用 函数将事件对象的状态置为无信号状态。 当一个手动复原的事件对象的状态被置为有信号状态时该对象状态将一直保持有信号状态直至明确调用 函数将其置为无符号状态。当事件的对象被置为有信号状态时任意数量的等待中线程以及随后开始等待的线程均会被释放。当一个自动复原的事件对象的状态被置为有信号状态时 该对象状态将一直保持有信号状态 直至一个等待线程被释放;系统将自动将此函数置为无符号状态。如果没有等待线程正在等待事件对象的状态将保持有信号状态。多个进程可持有同一个事件对象的多个句柄可以通过使用此对象来实现进程间的同步。下面的对象共享机制是可行的 ·在 函数中 参数指定句柄可被继承时通过 函数创建的子进程继承的事件对象句柄。 ·一个进程可以在