标签:bsp port uitouch token atomic interface amp ted main
// // ViewController.m // 09-掌握-GCD常用函数 // // Created by xiaomage on 16/2/18. // Copyright ? 2016年 小码哥. All rights reserved. // #import "ViewController.h" #import "XMGPerson.h" @interface ViewController () @end @implementation ViewController -(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event { // [self once]; XMGPerson *p1 = [[XMGPerson alloc]init]; XMGPerson *p2 = [[XMGPerson alloc]init]; NSLog(@"%@---%@",p1.books,p2.books); } //延迟执行 -(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_t queue = 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----%@",[NSThread currentThread]); }); } //一次性代码 //不能放在懒加载中的,应用场景:单例模式 -(void)once { static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ //整个项目生命周期只执行一次,多次调用都不会执行多次 NSLog(@"---once----"); }); } -(void)task { NSLog(@"task----%@",[NSThread currentThread]); } @end
// // XMGPerson.h // 09-掌握-GCD常用函数 // // Created by xiaomage on 16/2/18. // Copyright ? 2016年 小码哥. All rights reserved. // #import <Foundation/Foundation.h> @interface XMGPerson : NSObject @property (nonatomic, strong) NSArray *books; @end
// // XMGPerson.m // 09-掌握-GCD常用函数 // // Created by xiaomage on 16/2/18. // Copyright ? 2016年 小码哥. All rights reserved. // #import "XMGPerson.h" @implementation XMGPerson -(NSArray *)books { // if (_books == nil) { // _books = @[@"1234",@"56789"]; // } static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ //只执行一次 _books = @[@"1234",@"56789"]; }); return _books; } @end
标签:bsp port uitouch token atomic interface amp ted main
原文地址:http://www.cnblogs.com/yaowen/p/7517736.html