iOS开发学习iOS DeveloperiOS开发

iOS GCD常用函数

2017-05-30  本文已影响15人  BEYOND黄

//延迟执行

-(void)delay

{

NSLog(@"start-----");

//1.延迟执行的第一种方法

//[self performSelector:@selector(task) withObject:nil afterDelay:2.0];

//2.延迟执行的第二种方法

//[NSTimer scheduledTimerWithTimeInterval:2.0 target:self selector:@selector(task) userInfo:nil repeats:YES];

//3.GCD

//dispatch_queue_t queue = dispatch_get_main_queue();

dispatch_queue_tqueue =dispatch_get_global_queue(0,0);

/*

第一个参数:DISPATCH_TIME_NOW从现在开始计算时间

第二个参数:延迟的时间2.0 GCD时间单位:纳秒

第三个参数:队列

*/

dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2.0*NSEC_PER_SEC)), queue, ^{

NSLog(@"GCD----%@",[NSThreadcurrentThread]);

});

}

//一次性代码

//不能放在懒加载中的,应用场景:单例模式

-(void)once

{

staticdispatch_once_tonceToken;

dispatch_once(&onceToken, ^{

NSLog(@"---once----");

});

}

上一篇 下一篇

猜你喜欢

热点阅读