一个信号量(semaphore) S 是个整型变量,它除了初始化外只能通过两个标准原子操作:wait() 和 signal() 来访问。操作wait() 最初称为P, signal() 最初称为 V。wait()会-1, signal()+1。
- Semaphore:
typedef struct{
int value;
struct process *list;
}semaphore
- wait():
wait(semaphore *S) {
S->value
一个信号量(semaphore) S 是个整型变量,它除了初始化外只能通过两个标准原子操作:wait() 和 signal() 来访问。操作wait() 最初称为P, signal() 最初称为 V。wait()会-1, signal()+1。
typedef struct{
int value;
struct process *list;
}semaphore
wait(semaphore *S) {
S->value