?? 哲學家(vc).txt
字號:
CMutex StickLeft(FALSE,"StickLeft",NULL);
CMutex StickRight(FALSE,"StickRight",NULL);
cin.get();
****************************************************
CMutex StickLeft(FALSE,"StickLeft",NULL);
CSingleLock PV(&StickLeft);
cout<<"要求使用左筷子";
cin.get();
PV.Lock();
cout<<"正在使用左筷子。。。。";
cin.get();
cout<<"左筷子使用完畢,準備通告";
cin.get();
PV.Unlock();
cout<<"正在思考。。。。";
cin.get();
******************************************************
CMutex StickRight(FALSE,"StickRight",NULL);
CSingleLock PV(&StickRight);
cout<<"要求使用右筷子";
cin.get();
PV.Lock();
cout<<"正在使用右筷子。。。。";
cin.get();
cout<<"右筷子使用完畢,準備通告";
cin.get();
PV.Unlock();
cout<<"正在思考。。。。";
cin.get();
******************************************************
CSyncObject * aStick[5];
aStick[2]=new CMutex(FALSE,"StickLeft",NULL);
aStick[3]=new CMutex(FALSE,"StickRight",NULL);
//CMutex StickLeft(FALSE,"StickLeft",NULL);
//CMutex StickRight(FALSE,"StickRight",NULL);
//aStick[2]=&StickLeft;
//aStick[3]=&StickRight;
CMultiLock PV(&(aStick[2]),2,FALSE);
cout<<"要求使用筷子";
cin.get();
PV.Lock();
cout<<"正在使用筷子。。。。";
cin.get();
cout<<"筷子使用完畢,準備通告";
cin.get();
PV.Unlock();
cout<<"正在思考。。。。";
cin.get();
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -