赞
踩
// 1.perform(必须在主线程中执行) self.perform(#selector(delayExecution), with: nil, afterDelay: 3) // 取消 NSObject.cancelPreviousPerformRequests(withTarget: self) // 2.timer(必须在主线程中执行) Timer.scheduledTimer(timeInterval: 3, target: self, selector: #selector(delayExecution), userInfo: nil, repeats: false) // 3.Thread (在主线程会卡主界面) Thread.sleep(forTimeInterval: 3) self.delayExecution() // 4.GCD 主线程/子线程 DispatchQueue.main.asyncAfter(deadline: .now() + 3) { self.delayExecution() } DispatchQueue.global().asyncAfter(deadline: .now() + 3) { self.delayExecution() }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。