针对情况:
某个任务我想要在n秒后执行,这种情况可以中dispatch——after来处理。
double delayInSeconds = 2.0;
dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, (int64_t)(delayInSeconds * NSEC_PER_SEC));
dispatch_after(popTime, dispatch_get_main_queue(), ^(void){
//延后执行的任务
});
这个方法并不是说在2毫微秒后执行,而是说要在2毫微秒后将任务追加到queue中。