进行P0和P1的共享变量定义及其初值为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=0while(flag[0]&&(turn==0));临界区;flag[1]=FALSE;}}则并发执行进程P0和P1时产生的情况是():
A.不能保证进程互斥进入临界区,会出现“饥饿”现象
B.不能保证进程互斥进入临界区,不会出现“饥饿”现象
C.能保证进程互斥进入临界区,会出现“饥饿”现象
D.能保证进程互斥进入临界区,不会出现“饥饿”现象