如何在后台线程上每秒执行一个方法,以免影响应用程序的性能

编程入门 行业动态 更新时间:2024-10-28 05:20:16
本文介绍了如何在后台线程上每秒执行一个方法,以免影响应用程序的性能的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

限时送ChatGPT账号..

我尝试每 30 秒访问一次我的数据库,但是,每当该方法执行时,我都可以清楚地看到应用程序的性能下降.

I am trying to access my database every 30 seconds, however, whenever the method executes I can clearly see a performance dip in the application.

到目前为止,这是我当前的代码:

So far this is my current code:

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() 方法,以便不影响应用程序的性能.

I am trying to do the same thing, except I would like to execute the getDatabaseInfo() method on a background thread so that the app's performance is not compromised.

推荐答案

使用 Grand Central Dispatch :

Use Grand Central Dispatch :

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

这篇关于如何在后台线程上每秒执行一个方法,以免影响应用程序的性能的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

更多推荐

[db:关键词]

本文发布于:2023-04-30 11:23:15,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1393292.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:线程   应用程序   后台   性能   方法

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!