我使用计时器在180秒后调用一个函数。但是计时器有时会以不同的方式运行,并在180秒内多次调用该函数。
请建议我如何在每180秒后调用一个函数,直到我发布停止消息而不使用计时器。
代码
如果(!tmr_CallWebService)
{
tmr_CallWebService = [NSTimer scheduledTimerWithTimeInterval:180 target:ClassTracing selector:@selector(startLocationTracing)userInfo:nil repeats:YES];
}
提前致谢
答案 0 :(得分:3)
您可以使用NSObject中的- (void)performSelector:(SEL)aSelector withObject:(id)anArgument afterDelay:(NSTimeInterval)delay
答案 1 :(得分:3)
我认为有一种方法可以完成这项任务,这里就像这样使用它
[self performSelector:@selector(yourMethodName) withObject:[NSArray arrayWithObjects:firstArgument,secondeArgument,nil] afterDelay:180];
如果你在该方法中没有参数,则使用nil代替数组。