隨着NSZombieEnabled
開啓,它將提供一些警告,防止在運行時發生的EXC_BAD_ACCESS
問題。NSZombieEnabled是否應該關閉發佈的應用程序?
我正在做雙重努力,以確保沒有/少量內存泄漏,但我可能會過度釋放,所以打開NSZombieEnabled
將有助於防止這種情況,我是對嗎?或者打開NSZombieEnabled
,是否所有內存釋放操作都會轉換爲空操作?這將是一個大問題是這樣的。
隨着NSZombieEnabled
開啓,它將提供一些警告,防止在運行時發生的EXC_BAD_ACCESS
問題。NSZombieEnabled是否應該關閉發佈的應用程序?
我正在做雙重努力,以確保沒有/少量內存泄漏,但我可能會過度釋放,所以打開NSZombieEnabled
將有助於防止這種情況,我是對嗎?或者打開NSZombieEnabled
,是否所有內存釋放操作都會轉換爲空操作?這將是一個大問題是這樣的。
不,你不應該附帶NSZombiesEnable
。殭屍通過將釋放對象的isa指針投射到「殭屍」類來工作。除非啓用NSDeallocateZombies
,否則不會釋放此對象的存儲。因此,如果你讓殭屍啓用,你可能會泄漏內存。
另外,蘋果公司表示,不把它留在NSDebug.h
啓用:
不要在該軟件的未來版本取決於這些符號是否存在等在你的代碼 。當然,不要依賴生產代碼中此標頭中的 符號。
如果在AppStore上發佈,我的猜測是你不會通過審查。
你應該關閉它,因爲NSZombieEnabled意味着你分配的對象沒有被釋放,因此你的應用程序將會泄漏。
http://www.cocoadev.com/index.pl?NSZombieEnabled
'NSZombieEnabled不應該留在原處永久,因爲默認情況下沒有對象將永遠不會真正解除了分配,使您的應用程序中使用的巨大數量的內存'