《Linux系统编程:进程同步与互斥_POSIX有名信号量》

在 POSIX 标准中,信号量分两种,一种是无名信号量,一种是有名信号量。无名信号量一般用于线程间同步或互斥,而有名信号量一般用于进程间同步或互斥。它们的区别和管道及命名管道的区别类似,无名信号量则直接保存在内存中,而有名信号量要求创建一个文件。前面我们学习了无名信号量的使用(详情请看《无名信号量》),这里我们学习有名信号量的使用。

1)创建一个有名信号量

所需头文件:

#include

#include

#include

当有名信号量存在时使用:
sem_t *sem_open(const char *name, int oflag);


当有名信号量不存在时使用:
sem_t *sem_open(const char *name, int oflag,mode_t mode, unsigned int value);

功能:创建一个有名信号量。

参数:

你可能感兴趣的:(Linux/Unix,系统编程)