[timer release]you only need to call if you "own" a timer. From the Apple Documentation:
, , , , . , , . , , . , , . (. " " ), ( , ), , .
?
alloc init , release :
NSTimer * timer = [[NSTimer alloc] initWith...];
NSRunLoop * runLoop = [NSRunLoop currentRunLoop];
[runLoop addTimer:timer forMode:NSDefaultRunLoopMode];
[timer release];
...
...
[timer invalidate];
timer = nil;
, , . , , release , , invalidate, . ( nil) . invalidate , ( ), , . nil .
, , , , :
NSTimer * timer = [NSTimer scheduledTimerWithTimeInterval ...];
[timer release]! , , . invalidate , :
[timer invalidate]
timer = nil;
, , , .