2010-03-30 42 views
0

在我正在使用的Outlook AddIn中,我使用列表來抓取當前文件夾中的所有消息,然後處理它們,然後保存它們。首先,我創建所有消息的列表,然後從消息列表中創建另一個列表,然後創建第三個需要移動的消息列表。實質上,它們都是對方的副本,我通過這種方式來組織它。如果我只使用一個列表,它會提高性能嗎?我認爲列表只是對實際項目的引用。使用大型列表

回答

3

沒有看到您的代碼,不可能知道您是在創建列表本身的副本還是將參考的副本添加到列表中 - 後者更可取。

要考慮的另一件事是您是否可以使用iterator block從Outlook流式傳輸郵件。通過使用List<T>,您目前正在緩衝整個消息序列,這意味着您必須將它們全部保存在內存中,一次處理它們一個。流式處理消息將減少應用程序的內存壓力,因爲您只需將每條消息保存在內存中足夠長的時間以處理它。

0

除非您的列表包含1000萬個或更多的項目,否則它不應該是一個問題。

Outlook似乎有問題小得多的郵箱大小,所以我會說你幾乎是安全的。