Я создал авторекламу. localString добавила в этот пул. Я выпустил пул. localString и строка должны быть освобождены. Но на самом деле они все еще живы. Вы можете увидеть мой журнал:Почему объект автореферата все еще жив?
Why is the string object still alive? I don't know.
и код:
-(NSString*) happyString
{
NSString *localString = [[[NSString alloc] initWithString:@"I don't know."] autorelease];
return localString;
}
-(IBAction) onButton:(id)sender
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
NSString *string = [self happyString];
[pool release];
NSLog(@"Why is the string object still alive? %@", string);
}
Может быть, keepCount не 0? Запишите это свойство также с помощью [string retainCount] – matzino
@matzino Это не будет никакой ценности - saveCount бессмысленна. – Till
, кстати, вы должны использовать '[pool drain];' вместо '[pool release];'. –