我試圖測試我的iPhone內存泄漏,我沒有太多的運氣擺脫這一個。這是泄漏的代碼。無法弄清楚如何擺脫內存泄漏
- (id)initWithManagedObjectContext:(NSManagedObjectContext *)aMoc delegate:(id)aDelegate runSync:(BOOL)aRunSync {
if (self = [super init]) {
self.moc = aMoc;
self.settingsManager = [[VacaCalcSettingsManager alloc] initWithManagedObjectContext:self.moc];
self.delegate = aDelegate;
calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
self.runSync = aRunSync;
}
return self;
}
它正在泄漏self.settingsManager = [[VacaCalcSettingsManager alloc] initWithManagedObjectContext:self.moc];
行。
self.settingManager實例變量在類的dealloc方法中發佈。
我不確定什麼其他信息將是相關的。請讓我知道,我可以提供。
感謝您的任何幫助。
-Mark
這是頭文件。
@interface VacaCalcCalculation : NSObject {
NSManagedObjectContext *moc;
VacaCalcSettingsManager *settingsManager;
id delegate;
NSCalendar *calendar;
NSDate *nextBankLimitDate;
BOOL runSync;
}
@property (nonatomic, retain) NSManagedObjectContext *moc;
@property (nonatomic, retain) VacaCalcSettingsManager *settingsManager;
@property (nonatomic, retain) id delegate;
@property (nonatomic, retain) NSCalendar *calendar;
@property (nonatomic, retain) NSDate *nextBankLimitDate;
@property (nonatomic) BOOL runSync;
- (id)initWithManagedObjectContext:(NSManagedObjectContext *)aMoc delegate:(id)aDelegate;
不是iPhone的開發者,所以這是我對系統工作方式缺乏瞭解,但它看起來像日曆只是設置了一個新的值,並沒有做任何事情。那裏可能有什麼? – Jay 2010-05-11 18:02:06
顯示頭文件對實例變量的聲明。 – 2010-05-11 18:20:40