我有一个应用程序,其中主UI等待更新之前进行一些计算。整个应用程序仅取决于用户与wifi的连接,因为我们正在进行任何api调用来计算数据。有时,在RARE条件下,运行所有内容的函数都会执行两次……导致更新后的UI显示无效数据。
有什么方法可以防止这种情况发生?抱歉,我没有显示代码,因为它更容易解释这个概念。
编辑:要重现此错误,这是我要做的。下面的伪代码
override func viewDidLoad() {
mainCall()
}
override func viewWillAppear(_ animated: Bool) {
mainCall()
}
func executeOne(){
callA(){}
callB(){}
etc...
}
答案 0 :(得分:0)
您可以使用bool变量来指示API调用是否已经在进行中,并且仅在另一个调用不在进行中时才触发API调用。
into file('target')