摘要:
1、概述 信号量(semaphore)是一种用于提供不同进程间或一个给定进程的不同线程间同步手段的原语。信号量的使用主要是用来保护共享资源,使得资源在一个时刻只有一个进程(线程)所拥有。信号量的值为正的时候,说明它空闲。所测试的线程可以锁定而使用它。若为0,说明它被占用,测试的线程要进入睡眠队列中,等待被唤醒。Posix信号量分为有名信号量和无名信号量(也叫基于内存的信号量)。2、Posix有名信号量 有名信号量既可以用于线程间的同步也可以用于进程间的同步。1)由sem_open来创建一个新的信号量或打开一个已存在的信号量。其格式为:sem_t *sem_open(const char *.. 阅读全文