//第一种每一秒执行一次(重复性)
double delayInSeconds =1.0;
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);
//第二种二秒后执行(一次性)
flag=NO;//这个值在页面消失的时候改成yes 不然三分钟后 不管在哪个页面 都会显示或者进行你这个操作的
double delayInSeconds =180;
dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, delayInSeconds *NSEC_PER_SEC);
dispatch_after(popTime,dispatch_get_main_queue(), ^(void){
if (flag)return;
想要显示或者执行的操作写在这个地方
});
//第三种每一秒执行一次(重复性)
[NSTimerscheduledTimerWithTimeInterval:1target:selfselector:@selector(testTimer)userInfo:nilrepeats:YES];
新闻热点
疑难解答