我需要延迟一段时间,但允许同一个运行循环上的其他东西继续运行。我一直在使用以下代码来执行此操作:
[[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:1]];
这似乎完全符合我的要求,只是有时函数会立即返回而无需等待所需的时间(1 秒)。
任何人都可以让我知道可能导致这种情况的原因吗?在允许运行循环运行时等待的正确方法是什么?
注意:我想以类似于 sleep() 的方式进行延迟,这样在延迟之后我回到与以前相同的执行流中。