0

这是处理它的代码部分:

NSDate *fireDate = [NSDate dateWithTimeIntervalSinceNow:1.0+index];
        NSTimer *timer = [[NSTimer alloc] initWithFireDate:fireDate
                                                    interval:0.5
                                                    target:self
                                                  selector:@selector(countedtargetMethodGlow:)
                                                  userInfo:nil
                                                   repeats:NO];

NSRunLoop *runLoop = [NSRunLoop currentRunLoop];
[runLoop addTimer:timer forMode:NSDefaultRunLoopMode];
[timer release];

但它是在一个循环中,所以我会做一堆这些,我不知道我需要留下什么才能让射击不被搞砸。

4

1 回答 1

0

您添加到运行循环的每个计时器对象都由运行循环保留,直到它失效(有效地表明运行循环在需要它时正在获取计时器的“所有权”)。因此,您可以释放这些计时器中的任何一个,而不会影响它们在运行循环中的调度方式。如果您出于某些独立目的需要它们,则不应释放它们,因此即使运行循环已完成它们,它们也可以保证仍然存在于您身边。

于 2010-05-19T08:54:31.457 回答