performSelector:withObject:来自类方法的afterDelay不起作用

时间:2011-02-01 00:52:25

标签: iphone objective-c

知道为什么这不起作用吗?

[self performSelector:@selector(foo:) withObject:argObj afterDelay:5.0];

我在一个类方法中调用它,并且它为同一个类调用另一个类方法(因此是'self')。这有效吗?

我在foo中放置了一个断点,但是没有调用它。这是怎么回事?

3 个答案:

答案 0 :(得分:7)

您是否在调用perform:afterDelay:的线程上运行了一个运行循环?如果没有,它将无法运行。

答案 1 :(得分:-1)

也许我误解了你的问题,但为什么你首先在静态环境中使用self关键字?为什么不简单地将self更改为类的名称?

答案 2 :(得分:-1)

- (void)performSelector:(SEL)aSelector withObject:(id)anArgument afterDelay:(NSTimeInterval)delay

The method是一个实例方法,接收者应该是类的实例。它需要一个具体的对象来执行操作。所以我认为它不会在类方法中起作用。