美文网首页iOS面试
iOS 多线程面试题(延时函数(dispatch_after))

iOS 多线程面试题(延时函数(dispatch_after))

作者: 程序员_秃头怪 | 来源:发表于2019-08-06 20:25 被阅读10次
延时函数(dispatch_after)

dispatch_after能让我们添加进队列的任务延时执行,该函数并不是在指定时间后执行处理,而只是在指定时间追加处理到dispatch_queue

//第一个参数是time,第二个参数是dispatch_queue,第三个参数是要执行的block
    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
        
        NSLog(@"dispatch_after");
    });

由于其内部使用的是dispatch_time_t管理时间,而不是NSTimer。
所以如果在子线程中调用,相比performSelector:afterDelay,不用关心runloop是否开启

热文推荐

2019 全网 iOS 面试题以及答案总结!

相关文章

网友评论

    本文标题:iOS 多线程面试题(延时函数(dispatch_after))

    本文链接:https://www.haomeiwen.com/subject/avcgdctx.html