2010-08-13 42 views
1

我正在構建一個從List繼承的類。項目將在運行時添加到這個集合中,我想要的是讓這個類在添加n個項目之後自動對每個項目塊執行一些操作。如何同時處理集合中的n個項目

所以這裏是場景。

1]創建從名單繼承新類 - CollectionX

2]在運行時,我們將調用ColX.Add(T)多次

3]當COLX有500分以上的項目是將它們移動到臨時區域並對它們進行操作,然後刪除它們。請記住,所有的時間項目仍將被添加到ColX。

所以我想我的問題是我如何實現這個很好,並確保它是線程安全的。

要執行的工作必須以塊形式完成,因此我不認爲隊列將起作用,因爲您一次只能出列1個項目。

我想即時尋找更多的模式比實際類型或庫。

任何人都可以幫忙嗎?

回答

0

不要讓CollectionX繼承List。

相反,內部使用2個列表,將Add()更改爲1並處理另一個列表。

這樣你只需要lock交換列表。如果有時間問題,你甚至可以使用第三個列表來防止堵塞。

相關問題