一个正在运行的任务对某个信号量S执行了P操作,若P操作后S的值【】,则该任务可继续执行。
A:大于或者等于0 B:必须大于0 C:只要不等于0 D:小于或者等于0
P操作--P(S)
S = S - 1;
1)若S>=0,那么该任务继续执行;
2)若S<0,置该任务为等待状态,排入等待队列;
V操作--V(S)
S = S + 1;
1)若S>0,该任务继续执行;
2)若S<=0,从任务队列中取第一个等待信号量的任务执行;
一个正在运行的任务对某个信号量S执行了P操作,若P操作后S的值【】,则该任务可继续执行。
A:大于或者等于0 B:必须大于0 C:只要不等于0 D:小于或者等于0
P操作--P(S)
S = S - 1;
1)若S>=0,那么该任务继续执行;
2)若S<0,置该任务为等待状态,排入等待队列;
V操作--V(S)
S = S + 1;
1)若S>0,该任务继续执行;
2)若S<=0,从任务队列中取第一个等待信号量的任务执行;