我试图每30秒访问一次数据库,但是,每当方法执行时,我可以清楚地看到应用程序的性能下降。
到目前为止,这是我当前的代码:

var timer = Timer()

override func viewDidLoad() {
    super.viewDidLoad()
    scheduledTimerWithTimeInterval()

}

func scheduledTimerWithTimeInterval(){
    timer = Timer.scheduledTimer(timeInterval: 30, target: self, selector: #selector(self.updateCounting), userInfo: nil, repeats: true)
}

@objc func updateCounting(){
    getDatabaseInfo()
}

我正试图做同样的事情,只是我想在后台线程上执行getdatabaseinfo()方法,这样应用程序的性能就不会受到影响。

最佳答案

Use Grand Dispatch:

DispatchQueue.global(qos: .background).async {
    getDatabaseInfo()
}

关于swift - 如何每秒在后台线程上执行一种方法,以免影响应用程序的性能,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53928105/

10-11 18:21