2011-11-22 43 views
0

我有一個需要定期更新的項目集合。這些項目的重要性在於某些項目必須比其他項目更頻繁地提供服務。但是,我必須在一定時間內爲所有物品提供服務(即,我不希望那些物品最終不會被處理)。Priority Queue Juggling

如果所有項目具有相同的權重,則只需一個簡單的FIFO即可。但高優先級的需要能夠切入,因此我認爲優先隊列被指示。問題是,什麼決定了優先權?我認爲這是一個加權函數,以及自上次服務以來的時間。但是,如何確定該函數的形式,以便沒有項目停留在堆的底部?

回答

0

我會根據他們在隊列中的時間排序,然後通過優先級權重。在隊列中添加新項目時,應用基於時間的閾值,因此添加新項目時,不能放置高於超過隊列中最大允許時間的項目。

相關問題