【发布时间】:2011-10-05 09:59:12
【问题描述】:
在我的 iPhone 应用程序中,我有几个地方可以做一个
[object performSelector: withObject: afterDelay:]
打电话。所有这些都导致相同的方法。现在,在该方法中,我只想在最近一次调用它时执行一些代码。如果是第一个,我可以只做[NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(thisMethod) object:nil] 并确保它被调用一次。
但是,有没有办法判断是否还有其他方法调用等待执行?
我可以在这个类中使用一个计数器,每次我在延迟后设置这个执行时我都会增加它,然后在每次调用开始时减少它,并且只有在这个计数器为零时才执行代码。但我想知道这是否是最好/可接受的方法......
【问题讨论】:
标签: iphone objective-c cocoa-touch cocoa performselector