• 2022-06-09
    进行P0和P1的共享变量定义及其初值为[br][/br] booleanflag[2]={FALSE,FALSE}; intturn=0; 若进行P0和P1访问临界资源的类C代码实现如下: voidp0()//进程p0 { while(TURE) { flag[0]=TURE; turn=1; while(flag[1]&&(turn==1)); 临界区; flag[0]=FALSE; } } voidp1()//进程p1 { while(TURE) { flag[1]=TURE; turn=0 while(flag[0]&&(turn==0)); 临界区; flag[1]=FALSE; } } [br][/br] 则并发执行进程P0和P1时产生的情况是():
    A: 不能保证进程互斥进入临界区,会出现“饥饿”现象
    B: 不能保证进程互斥进入临界区,不会出现“饥饿”现象
    C: 能保证进程互斥进入临界区,会出现“饥饿”现象
    D: 能保证进程互斥进入临界区,不会出现“饥饿”现象
  • 举一反三