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
未指定,则忽略第三个和第四个参数。