if(!DCT_temp->blockqueue) //设备自身的等待队列 { //为空 DCT_temp->state=true; DCT_temp->use=NULL; break; }
else //该设备目前被其他进程申请(队列不空) {
DCT_temp->use=DCT_temp->blockqueue;
DCT_temp->blockqueue=DCT_temp->blockqueue->next; break; }
if(!COCT_temp->use) {
COCT_temp->use=DCT_temp->use; COCT_temp->state=false; if(!CHCT_temp->use) {
CHCT_temp->use=COCT_temp->use; CHCT_temp->state=false;
} } } } }
if(i==SDT_table.size()) {
cout<<\该设备不存在,请重新输入下一条操作指令。\ } else {
cout<<\成功释放该设备,请输入下一条指令。\ } } }
return 0; }