4.26
第一
1 //临界资源的访问过程
do{ 2 entry section; 3 critical section; 4 exit section; 5 remainder section; 6 }
//记录型信号量 typedef struct{ int value; struct process *L; } semaphore; void wait(semaphore S){ S.value---; if(S.value<0){ block(S.L); } } void signal(semaphore S){ S.value++; if(S.value<=0){ wakeup(S.L); } }
第二
555

浙公网安备 33010602011771号