- (void)viewDidLoad {
[super viewDidLoad];
// 第 1 种:performSelector
// 3.0s 以后 执行showNSLog: 方法,如果 withObject 不为 nil,则是传递过去的参数
// 注意,这个方法不会影响后面代码的执行,所以打印顺序是 12121212, 949494494, showMessage
NSLog(@"12121212");
[self performSelector:@selector(showMessage) withObject:nil afterDelay:3];
NSLog(@"949494494");
// 这个是 GCD,执行顺序和上面一样
NSLog(@"-------");
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(3.0*NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
NSLog(@"ok-ok-ok");
});
NSLog(@"44444444");
// 第 3 种:NSTimer
// 如果 repeats 为 YES,那么就是每隔 3.0s 就重复一次 showNSLog 这个方法
[NSTimer scheduledTimerWithTimeInterval:3.0 target:self selector:@selector(showMessage) userInfo:nil repeats:YES];
}
-(void)showMessage{
NSLog(@"showMessage");
}
网友评论