2013-07-25 83 views
0

在C中,您可以通過檢查對malloc()的調用的返回值來檢查系統是否有足夠的空閒內存。你如何檢查系統在Objective-C中是否有足夠的可用內存?如果沒有足夠的內存,alloc會拋出異常嗎?iOS:檢查系統是否有足夠的內存

我創建了一個派生自NSObject的類用於內存中的照片緩存。如果有足夠的內存,我需要在將某些內容保存到緩存之前進行檢查,並且無法完全弄清楚這樣做的正確方法。

感謝

+0

你可以檢查可用內存,因爲它print_free_memory功能在http://stackoverflow.com/questions/5012886/knowing-available-ram-on-an-ios-device – stosha

回答

1

-alloc將返回nil如果無法分配請求的內存。只需檢查返回值是否爲零。

+0

你會建議這樣做,如果我我正在做一個'[NSData dataWithContentsOfURL:]'調用?如果沒有足夠的空閒內存,它會返回「nil」嗎? –

+0

是的。如果分配內存失敗,任何分配內存的方法都會返回'nil'。 – user1118321

相關問題