【发布时间】:2011-06-17 01:21:31
【问题描述】:
只是一个简单的问题。 我有一个以 5 秒为周期多次调用的函数。有没有办法合并一个 NSTimer 以便在函数调用之间有一个暂停(即,在计时器达到某个限制之前无法调用该函数)? 任何和所有的建议都表示赞赏!
亚历克斯
【问题讨论】:
标签: iphone nstimer function-calls nstimeinterval
只是一个简单的问题。 我有一个以 5 秒为周期多次调用的函数。有没有办法合并一个 NSTimer 以便在函数调用之间有一个暂停(即,在计时器达到某个限制之前无法调用该函数)? 任何和所有的建议都表示赞赏!
亚历克斯
【问题讨论】:
标签: iphone nstimer function-calls nstimeinterval
如果您不希望某个方法在被调用后的某个时间段内被调用,您可以这样做,
- (void)methodThatDoesStuff {
static NSDate * lastCalled = nil;
if ( [[NSDate date] timeIntervalSinceDate:lastCalled] < 5 ) {
NSLog(@"Call Blocked");
return;
}
NSLog(@"Called");
[lastCalled release];
lastCalled = [[NSDate date] retain];
}
这将在方法成功运行后阻塞所有方法调用 5 秒。
【讨论】: