PR_OpenSemaphore¶
创建或打开一个具有指定名称的命名信号量。
语法¶
#include <pripcsem.h>
#define PR_SEM_CREATE 0x1 /* create if not exist */
#define PR_SEM_EXCL 0x2 /* fail if already exists */
NSPR_API(PRSem *) PR_OpenSemaphore(
const char *name,
PRIntn flags,
PRIntn mode,
PRUintn value
);
参数¶
该函数具有以下参数
name要赋予信号量的名称。
flags如何创建或打开信号量。
mode创建信号量时使用的 Unix 风格文件模式。
value分配给信号量的初始值。
返回值¶
指向 PRSem 结构的指针或 NULL/code> 发生错误时。
描述¶
如果命名信号量不存在并且指定了 PR_SEM_CREATE 标志,则创建命名信号量。创建的信号量需要使用 PR_DeleteSemaphore 调用从系统中删除。
如果指定了 PR_SEM_CREATE,则第三个参数是新信号量的访问权限位(与 PR_Open 的 mode 参数的解释相同),第四个参数是新信号量的初始值。如果 PR_SEM_CREATE 未指定,则忽略第三个和第四个参数。