我正在尋找一些模式或在C++中實現的設計思路,這將允許以下內容。哪種設計模式?
1.
- 類似物體
- 對象提出請求並得到客戶放棄池
- 池的增長筋疲力盡的時候,不縮水
- 會有多個客戶端(每個客戶一個池避免無效)
安對象池似乎最合適的。
2.
從池中得到的物體將是將被動態地鏈接在一起的數據處理器。每個對象執行一些操作,在傳遞數據之前可能會或可能不會更改數據(或者它們可能會終止鏈)。
這個要求讓我有點卡住了。我正在考慮一些修改後的責任鏈,其中數據將傳遞給所有人。
但是,我只是從空氣中採摘模式,並假設其最好的方法,所以我會很感激一些反饋,替代想法和借鑑他人的經驗警惕!
謝謝,
斯圖爾特。
感謝您的反饋到目前爲止:
中的對象進行實時數據的解碼/分析/轉換。該池將包含從相同基類派生的各種對象。
控制平面將根據外部標準動態創建並初始化對象鏈和對象。
數據格式可以在通過對象時顯式指示/更新。然而,這是孤立的,沒有什麼後果,因爲它在連鎖創作中已知。
該戰略模式值得一些研究。
儘管池很像工廠,但創建一個抽象池可以生成具有相同接口但內部完全不同的對象應該是有效的。 每秒會有數百個對象構造/破壞。 該應用程序是音頻/視頻處理,具有不同的編解碼器,幀率/大小,輸入/輸出並行。 所以鏈的順序很重要,鏈中的元素只有在運行時才知道。 轉換可以相當劇烈地改變數據。 – hplbsh 2009-09-17 19:46:12