我創建了一個方法,像下面一個:內存泄漏問題
+ (JSONManager *)GetInstance
{
if (!instance)
{
instance = [[JSONManager alloc] init];
}
return instance;
}
,我需要用同樣的方法在不同的視圖...如果我釋放它工作正常,第一種觀點這個如果試圖導航到第二個視圖我的應用程序崩潰。
任何一個可以請讓我知道我在哪裏需要釋放對象提前
我創建了一個方法,像下面一個:內存泄漏問題
+ (JSONManager *)GetInstance
{
if (!instance)
{
instance = [[JSONManager alloc] init];
}
return instance;
}
,我需要用同樣的方法在不同的視圖...如果我釋放它工作正常,第一種觀點這個如果試圖導航到第二個視圖我的應用程序崩潰。
任何一個可以請讓我知道我在哪裏需要釋放對象提前
這似乎是一個單身
感謝。你不應該在第一個視圖中釋放它。您將希望在應用程序的整個生命週期中使用相同的實例。
如果這不是要求,您應該提供機制將instance
變量設置爲nil
,因爲它將在釋放對象後指向釋放對象。但我認爲情況並非如此。
該代碼看起來像一個Singleton。 Singleton的目的是在整個應用程序中有一個資源實例。
因此,在第一個視圖中完成後,您不應該釋放實例,因爲您想在另一個視圖中使用它。
如果你擔心釋放這種情況下看看下面的鏈接,一個模板單類iOS應用程序:
雅這是單身......所以有沒有辦法沒有釋放它,但我越來越內存泄漏...我需要做什麼來避免泄漏 – vidya
我已經添加了一個鏈接,供您在iOS應用程序中用作單身人士的模板。 –
如果你想有一個真正的單身使用這個模板,生成它。 它是基於蘋果的辛格爾頓代碼 http://blog.mugunthkumar.com/coding/objective-c-singleton-template-for-xcode-4/
嘗試釋放它在其他視圖,其中u正在訪問該 – booleanBoy
http://meta.stackexchange.com/q/5234/150789 –