2010-11-18 89 views
7
  1. 核心數據的最大存儲容量是多少?
  2. 應用程序級別是否有任何容量限制?就像在可用的核心數據空間中,我的應用程序只能消耗X數量?
  3. 如果我的應用程序試圖超過X會怎麼樣?

回答

12

核心數據沒有硬盤存儲容量,所以你幾乎受到系統可用磁盤空間的限制。在iOS上(大多數情況下在OS X上)核心數據由SQLite支持,所以如果有任何限制,它就是支持SQLite數據庫的大小。未保存的數據存儲在RAM中,而iOS不支持分頁出內存,所以未保存的數據集受設備上可用RAM限制。如果您嘗試超出內存,您的應用程序將被關閉。如果您嘗試超出磁盤空間,我想象保存操作將會失敗並出現相應的NSError。

+1

好的。任何想法SQLite可以在IOS中使用的最大大小是多少? – Abhinav 2010-11-18 23:02:53

+7

根據http://sqlite.org/limits.html#max_page_count,SQLite數據庫文件中的最大頁面數默認約爲10億。對於1KB的頁面大小,這是1TB的有效限制。 – 2010-11-19 05:57:02