dispatch_after 的使用方法
2015-08-27 18:59
183 查看
dispatch_after 的使用方法
1. dispatch 意思是:迅速执行2. dispatch_after函数:
void dispatch_after ( dispatch_time_t time, dispatch_queue_t
queue, dispatch_block_t block );
该方法的第一个参数是 time,第二个参数是
queue,第三个参数是要执行的 block。
3. dispatch_after 这个函数的作用是:
在 time 时间后,把 block 任务添加到 queue 队列中,并不是表示在time时间后执行任务,
大部分情况该函数能达到我们的预期,只有在对时间要求非常精准的情况下才可能会出现问题。
4. dispatch_time_t有两种形式的构造方式(不能直接赋值):
第一种:相对时间 可以通过dispatch_time函数来获取,DISPATCH_TIME_NOW表示现在,NSEC_PER_SEC表示的是秒数,它还提供了NSEC_PER_MSEC表示毫秒
第二种:绝对时间 可以通过dispatch_walltime函数来获取,dspatch_walltime需要使用timespec的结
构体来得到dispatch_time_t
5.代码展示:
dispatch_after(
/**第一个参数time,通过dispatch_time函数来获取*/
dispatch_time(DISPATCH_TIME_NOW, (int64_t)(self.imageView.animationDuration
* NSEC_PER_SEC)),
/**第二个参数queue*/
dispatch_get_main_queue(),
/**第三个参数block*/
^{
self.timer = [NSTimerscheduledTimerWithTimeInterval:3.0
target:selfselector:@selector(timerAnimation)userInfo:nilrepeats:NO];
}
);
相关文章推荐
- 深入理解Java的接口和抽象类
- 对象模型如何影响程序
- 对象模型如何影响程序
- 第一天申请blog,记下申请blog的时间吧
- 两种单例模式的写法
- Mysql在大型网站的应用架构演变
- JSF 2 checkboxes example
- Android TextView 给文本中指定片段添加自定义点击事件
- 小甲鱼Python第十讲课后题
- 纯css玩转三角形
- new关键字的用法
- 黑马程序员训练营十道满分题解
- 如何将oc代码转换成运行时代码
- 内核启动分析(四)——检查,配置环境阶段
- 看<<人人都是产品经理>>读后感
- Windows内核编程基础之使用LIST_ENTRY
- Java学习之自动装箱和自动拆箱源码分析
- 从零单排Opencv---新旧版本函数变化
- php安装完后配置php.ini和php-fpm.conf
- mac 下 sphinx + mysql + php 实现全文搜索(xampp)(4)php api 解析