//Dispatch After
//一段时间之后,把要执行的任务追加到队列当中
//创建时间
//相对的时间点 相对第一个参数多长时间之后
dispatch_time_t time =dispatch_time(DISPATCH_TIME_NOW,3ull * NSEC_PER_SEC);
//时间的单位
//NSEC_PER_SEC 秒
//NSEC_PER_MSEC 毫秒
//NSEC_PER_USEC 微秒
//dispatch_time_t指定的时间
dispatch_after(time,dispatch_get_main_queue(), ^{
NSLog(@"after 3s");
});
//第二种用法
dispatch_after_f(dispatch_time(DISPATCH_TIME_NOW,3ull * NSEC_PER_SEC),dispatch_get_main_queue(), NULL,func1);
//自己使用
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(5ull * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
;
});
#warning 注意
//1.不是一段时间之后执行相应的任务(而是把要执行的任务追加到队列当中)
//2.主线程 runloop 1/60秒检测事件,追加的时间范围 3s - (3 + 1/60)s
}
void func1()
{
}
本文详细介绍了DispatchAfter函数的使用方法及注意事项。通过实例演示了如何利用该函数实现延迟执行任务的功能,并解释了相对时间单位的选择及其对任务调度的影响。
&spm=1001.2101.3001.5002&articleId=44860847&d=1&t=3&u=463d79e112224439a3e3954f1b7fdded)
1914

被折叠的 条评论
为什么被折叠?



