Я видел много вопросов/ответов об утечках памяти в NSDateFormatter, но ни один из них не помог мне определить, что вызывает утечку памяти в моем приложении. Вот мой код:
- (id)init
{
if ((self = [super init]))
{
items = [[NSMutableArray alloc] init];
events = [[NSMutableArray alloc] init];
buffer = [[NSMutableData alloc] init];
format = [[NSDateFormatter alloc] init];
lastFromDate = @"";
}
return self;
}
- (void)presentingDatesFrom:(NSDate *)fromDate to:(NSDate *)toDate delegate:(id<KalDataSourceCallbacks>)delegate
{
[format setTimeZone:[NSTimeZone systemTimeZone]];
[format setDateFormat:@"MM/dd/yyyy"];
NSString *stringFromDate = [NSString stringWithString:[format stringFromDate:fromDate]];
NSString *stringToDate = [NSString stringWithString:[format stringFromDate:toDate]];
NSLog(@"From date: %@, To date: %@", stringFromDate, stringToDate);
[self didDatesChange:stringFromDate];
if (dataReady) {
[callback loadedDataSource:self];
return;
}
callback = delegate;
[self retrieveEventData:stringFromDate to:stringToDate];
}
- (void)dealloc
{
[items release];
[events release];
[buffer release];
[lastFromDate release];
[format release];
[super dealloc];
}
Когда я запускаю «Профиль» -> «Утечки», я получаю утечку памяти каждый раз, когда функция вызывается в строке
NSString *stringFromDate = [NSString stringWithString:[format stringFromDate:fromDate]];
Может кто-нибудь объяснить, что может происходить? спасибо, майк