2013-08-29 14 views
-1

I have a table that is using NSMutableArray`。當我刷新表格時,我需要重新加載數組中的所有項目。什麼是更高效?使用NSMutableArray的表格

我有2個選項

一)重新創建新的NSMUtableArray,扔掉舊

二)拆除現有陣列的所有項目和重裝一遍

從性能/內存等觀點什麼是iOS世界中最有效的選擇?

+1

我猜想,做removeAllObjects會稍微更有效,因爲它不會需要分配一個新的數組,對象會無論如何,如果陣列被丟棄,必須將其移除。 –

+0

而不是要求我們猜測,您可以嘗試這兩種方法並分析性能。 – Abizern

回答

1

從性能的角度來看,我認爲最好的選擇是實例化一個新的NSMutableArray對象,然後釋放舊的對象,或者讓ARC讓編譯器釋放舊對象。

從內存佔用的角度來看,最好是清除實例並重新加載它,因爲在應用程序中你沒有任何時間有兩個實例,但它只適用於大型數組。

最好的選擇是相對於上下文關係中最成功案例...

1

重複使用舊的NSMutableArray會更有效,因爲這將重用相同的內存(當您從陣列中移除所有元素時,不會釋放內存)。儘管這種情況不太可能會以顯着的方式影響性能,但您需要做數千次才能對性能產生影響。

相關問題