BUAA OO 2022 第二單元總結

2022-10-10 08:42:11 字數 780 閱讀 9428

需求:

整體設計:

發現別人bug有:

需求:整體設計:

//對所有同層/座的共享佇列進行加鎖, judgein()和personin()兩個相似的方法均對共享佇列進行加鎖, 造成了邏輯上的冗餘

public boolean judgein() else else if (direction == 0) }}

}}}return false;

}

本次作業並沒有發現其他人的bug, 直接開擺了

需求:整體設計:

//本方法直接將從請求佇列中得到多個請求加入到電梯的buffer, 在電梯開門之後,再將buffer的內容加入電梯內部

public synchronized arraylistgetreqs(int curfloor, int direction,

int cursize, int maxsize)

if (tempdir == 0)

if (comp(m.gettofloor(), m.getfromfloor()) == tempdir)

}return ans;

}

uml圖:

時序圖:

BUAA OO 第二單元總結

目錄多執行緒的經驗和教訓 這三次作業大致採用了相同的策略。執行緒設計方面,都是乙個input 輸入器 執行緒,乙個controller 控制器 執行緒,若干個elevator 電梯 執行緒。互動方式上,主要通過鎖來進行同步控制。每部電梯有乙個自己的privatelock,這些privatelock對...

第二冊第二單元總結

控制對檔案的訪問 目錄 讀取檔案許可權 設定許可權列表 裝置許可權列表載入 一.許可權列表的讀取 kiosk foundation0 desktop getfacl file file file 檔名稱 owner kiosk 檔案所有人 group kiosk 檔案所有組 user rw 使用者許...

C 第二單元總結

c 第二單元 順序結構程式設計 第一課 cout語言 使用輸入輸出流必須加上標頭檔案 include。輸出功能的語句cout 專案 如果專案是表示式則輸出達式的值 如果專案加引號則輸出引號內的內容 如果是endl則換行 第二課資料型別 整型int4,short2,long4,long long 布林...