在我的 iPhone 应用程序中,我有几个地方可以做
[object performSelector: withObject: afterDelay:]
称呼。所有这些都导致相同的方法。现在,在该方法中,我只想在最近一次调用它时执行一些代码。如果它是第一个,我可以做[NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(thisMethod) object:nil]
并确保它被调用一次。
但是,有没有办法判断是否还有其他方法调用等待执行?
我可以在此类中使用一个计数器,每次在延迟后设置此执行时我都会递增,然后在每次调用开始时递减它,并且仅在此计数器为零时才执行代码。但我想知道这是否是最好/可接受的方法......