2010-06-02 23 views
0

NSFetchedResultsController在每次表視圖請求新行時都會調用數據庫嗎?每次表視圖詢問新行時,NSFetchedResultsController是否會調用數據庫?

有沒有人跟蹤?蘋果公司表示,它確保在任何特定時間,mem中所需的對象最少,所以實際上這可能是唯一的方法。屏幕上的內容會丟失,並且正在滾動的內容會立即從持久性存儲中獲取。就像其他人會在-tableView中一樣:cellForRowAtIndexPath:對不對?或不?

回答

3

NSFetchedResultsController和Core Data通常使用相當複雜且高度優化的幕後高速緩存系統。緩存都在內存和磁盤上。這肯定不是一個簡單的獲取結果控制器爲表的每一行創建一個磁盤訪問的情況。

您可以將抓取的結果控制器視爲一個包含表的數據的數據結構。它如何管理與邏輯和物理數據存儲的關係實際上並不相關,無論如何,它都會根據即時條件動態變化。如果您正確設計數據模型,最終會自動進行優化。

相關問題