iOS的几种定时器
//gcd的定时器timer必须先保存为一个属性或者成员变量
@property (nonatomic , assign) dispatch_source_t timer; //第一种 每一秒执行一次(重复性)
double delayInSeconds = 1.0; //每间隔1秒执行
timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0));
dispatch_source_set_timer(timer, DISPATCH_TIME_NOW, delayInSeconds * NSEC_PER_SEC, 0.0);
dispatch_source_set_event_handler(timer, ^{
NSLog(@"timer date 1== %@",[NSDate date]);
});
dispatch_resume(timer); //第二种 二秒后执行 (一次性)
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){
NSLog(@"timer date 2== %@",[NSDate date]);
}); //第三种 每一秒执行一次 (重复性)
[NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(testTimer) userInfo:nil repeats:YES];
iOS的几种定时器的更多相关文章
- iOS中几种定时器 - 控制了时间,就控制了一切
		
在软件开发过程中,我们常常需要在某个时间后执行某个方法,或者是按照某个周期一直执行某个方法.在这个时候,我们就需要用到定时器. 然而,在iOS中有很多方法完成以上的任务,到底有多少种方法呢?经过查阅资 ...
 - [转]iOS 中几种定时器 - 控制了时间,就控制了一切
		
这篇文章是转载内容,原文地址:http://www.cocoachina.com/ios/20150519/11857.html?utm_source=tuicool 这里的知识点,其实在我们日常开发 ...
 - iOS中几种定时器
		
在软件开发过程中,我们常常需要在某个时间后执行某个方法,或者是按照某个周期一直执行某个方法.在这个时候,我们就需要用到定时器. iOS中定时器NSTimer的使用 1.初始化 + (NSTimer ...
 - iOS 计时器三种定时器的用法NSTimer、CADisplayLink、GCD
		
原文:http://www.cocoachina.com/ios/20160919/17595.html DEMO链接
 - Objective-C三种定时器CADisplayLink / NSTimer / GCD的使用
		
OC中的三种定时器:CADisplayLink.NSTimer.GCD 我们先来看看CADiskplayLink, 点进头文件里面看看, 用注释来说明下 @interface CADisplayLin ...
 - iOS中的三大定时器
		
iOS开发中定时器经常会用到,iOS中常用的定时器有三种,分别是NSTime,CADisplayLink和GCD. NSTimer 方式1 // 创建定时器 NSTimer *timer = [NST ...
 - IOS的七种手势
		
今天为大家介绍一下IOS 的七种手势,手势在开发中经常用到,所以就简单 通俗易懂的说下, 话不多说,直接看代码: // 初始化一个UIimageView UIImageView *imageView ...
 - 动手学习TCP:4种定时器
		
上一篇中介绍了TCP数据传输中涉及的一些基本知识点.本文让我们看看TCP中的4种定时器. TCP定时器 对于每个TCP连接,TCP管理4个不同的定时器,下面看看对4种定时器的简单介绍. 重传定时器使用 ...
 - iOS的三种多线程技术NSThread/NSOperation/GCD
		
1.iOS的三种多线程技术 1.NSThread 每个NSThread对象对应一个线程,量级较轻(真正的多线程) 2.以下两点是苹果专门开发的"并发"技术,使得程序员可以不再去关心 ...
 
随机推荐
- BZOJ 1103 大都市
			
dfs序+BIT. #include<iostream> #include<cstdio> #include<cstring> #include<algori ...
 - Xdebug的安装与使用
			
php下搭配使用xdebug是十分好的组合,用于php的调试工作,下面分别介绍之: 1 WINDOWS下的安装 下载站点http://www.xdebug.org/ 要确定使用一个跟你的PHP配合 ...
 - setTimeout/setInterval
			
//使用 setTimeout 时需注意,当该代码执行时,JS 会立即编译函数第一个参数“code” //所以该函数的第一个参数应该为:需要编译的代码.或者一个函数 //例1:setTimeout(& ...
 - ecshop 修改模板可输出php代码
			
1.找到includes 文件夹下的 cls_template.php function fetch_str函数 2.只留下以下代码 function fetch_str($source) { if ...
 - 【自动化测试】Selenium的智能等待
			
dr.implicitly_wait(30) --- 智能等待 http://www.cnblogs.com/fnng/p/3214112.html =========== selenium 调用键盘 ...
 - ora-0000 normal跟/etc/hosts有关
			
当hosts文件配置错误时,用sqlplus登录后startup nomount,就会报错ORA-00000 [oracle11g@testdb2 dbs]$ sqlplus "/ as s ...
 - yeoman的学习
			
官网地址:http://yeoman.io/ 什么是yeoman? 在上一篇博客已粗劣地提到yeoman的安装和验证.说白了,其实yeoman是生成代码和搭建框架的前端自动化工具.为了做到这些,yeo ...
 - 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:4.安装Oracle RAC FAQ-4.5.安装Grid,创建ASM磁盘组空间不足
			
因之前分区时,分区的Last cylinder的值选了“1”,导致创建磁盘组空间不足.解决办法是先删除分区,重新创建分区并删除ASM磁盘,然后重建ASM磁盘 1. 先删除分区,重新创建分区: 1)查询 ...
 - ERROR:The requested URL could not be retrieved解决方法
			
ERROR 错误 The requested URL could not be retrieved 您所请求的网址(URL)无法获取 While trying to retrieve the URL: ...
 - When not to automate 什么时候不进行自动化
			
The cornerstone of test automation is the premise that the expected application behavior is known. W ...