如何用Java來實(shí)現(xiàn)優(yōu)先級(jí)隊(duì)列,實(shí)現(xiàn)文件讀寫時(shí),定時(shí)定量的輸出
2 回答

largeQ
TA貢獻(xiàn)2039條經(jīng)驗(yàn) 獲得超8個(gè)贊
原生的隊(duì)列是沒有優(yōu)先級(jí)概念的,那么你需要在消息中包含優(yōu)先級(jí)的信息供你設(shè)計(jì)的東西做處理。
你設(shè)計(jì)的東西簡(jiǎn)單點(diǎn)的話可以對(duì)兩個(gè)隊(duì)列中包裝,一個(gè)隊(duì)列存放高優(yōu)先級(jí),一個(gè)隊(duì)列存其他消息,通過對(duì)Queue本身的幾個(gè)方法的內(nèi)部實(shí)現(xiàn)決定消息到底是去內(nèi)部的哪個(gè)隊(duì)列
定時(shí)定量這個(gè)很簡(jiǎn)單,后面掛個(gè)消費(fèi)者定時(shí)從你包裝的隊(duì)列中抽取一定數(shù)量的即可,而抽取的數(shù)據(jù)到底是從內(nèi)部哪個(gè)隊(duì)列出來由你封裝的對(duì)象實(shí)現(xiàn)(優(yōu)先pop高優(yōu)先級(jí)隊(duì)列,當(dāng)高優(yōu)先級(jí)隊(duì)列沒有數(shù)據(jù)再pop一般的隊(duì)列)
添加回答
舉報(bào)
0/150
提交
取消