<阅读linux系统编程手册笔记>
POSIX信号量跟System V信号量一样,都是用于进程和线程同步对同享资源的访问。信号量(POSIX,System V)是一个整数,其值是不能小于0的。
POSIX信号量主要分为:命名信号量、未命名信号量。
首先先介绍命名信号量。
一、命名信号量
先来看看命名信号量的主要API:
- sem_open()函数用于创建或者打开一个信号量
- sem_post(sem)和sem_wait(sem)递增或者递减一个信号量的值
- sem_getvalue()获取一个信号量的当前值
- sem_close()关闭信号量
- sem_unlink()删除一个信号量的名字并将其标记为在所有进程关闭该信号量时删除该信号量
1. sem_open()
#include <fcntl.h&