Ios 调度源取消(计时器)`是否足以取消周期性任务?
我想在ios swift中运行一个重复性任务。 下面是我重复一项任务的代码 如何停止重新刷新任务 我是否缺少Ios 调度源取消(计时器)`是否足以取消周期性任务?,ios,xcode,swift,Ios,Xcode,Swift,我想在ios swift中运行一个重复性任务。 下面是我重复一项任务的代码 如何停止重新刷新任务 我是否缺少stopfreshtimer()中的某些内容 即使我没有错过任何东西,是否在我调用stopfreshtimer()之后仍会运行旧的计划任务?还是立即停止 func startRefreshTimer() { if (timer != nil) {return } let queue = dispatch_queue_create("com.doma
stopfreshtimer()中的某些内容
即使我没有错过任何东西,是否在我调用stopfreshtimer()
之后仍会运行旧的计划任务?还是立即停止
func startRefreshTimer() {
if (timer != nil) {return }
let queue = dispatch_queue_create("com.domain.app.timer", nil)
timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0, queue)
dispatch_source_set_timer(timer, DISPATCH_TIME_NOW, 5 * NSEC_PER_SEC, 1 * NSEC_PER_SEC) // every 60 seconds, with leeway of 1 second
dispatch_source_set_event_handler(timer) {
if (self.timer == nil) {return}
self.getLineState(self.lineName)
}
dispatch_resume(timer)
}
func stopRefreshTimer() {
if (timer != nil)
{
dispatch_source_cancel(timer)
timer = nil
}
}