GCD:如何更改定时器的启动间隔
无论如何,这可能听起来是一个新手问题,我对GCD很陌生
我有以下代码:
int interval = 2; int leeway = 0; dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0); dispatch_source_t timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0, queue); if (timer) { dispatch_source_set_timer(timer, dispatch_walltime(DISPATCH_TIME_NOW, NSEC_PER_SEC * interval), interval * NSEC_PER_SEC, leeway); dispatch_source_set_event_handler(timer, ^{ [self someMethod]; }); dispatch_resume(timer); }
哪些方法是:
- (void)someMethod { NSLog(@"Thread 1"); }
如何在某些方法中更改timer
的启动间隔属性?
得到了我自己的答案,调用dispatch_source_set_timer
与新的区间值就足够了
- 在iOS中使用NSURLConnection按顺序下载文件
- 如何防止temporaryContext与migratePersistentStore同时运行
- Grand Central Dispatch(GCD)调度源标志
- 在CTCallCenter callEventHandler中取消隐藏视图非常缓慢
- 任何方式使dispatch_queue_t单线程工作?
- dispatch_after等同于NSOperationQueue
- 关于调用dispatch_queue_t和dispatch_sync
- 如何杀死/暂停/closuresGCD中的asynchronous块?
- 如何从asynchronous属性的getter返回?