gpt4 book ai didi

swift - 为什么 NSOperationQueue.mainQueue 不起作用?

转载 作者:行者123 更新时间:2023-11-30 13:26:53 26 4
gpt4 key购买 nike

我有这个代码

    @IBAction func joinButtonTouch(sender: AnyObject) {
NSOperationQueue.mainQueue().addOperationWithBlock({
self.joinButton.backgroundColor = UIColor(red: 0/255, green: 122/255, blue: 255/255, alpha: 1.0)
self.activityIndicator.startAnimating()
self.resultLogIn.text = "Checking data..."
})


var response = NetworkManager.sharedInstance.SendRequest("<Command=LogIn><Login=\(loginTextField.text!)><Password=\(passwordTextField.text!)>")
}

我希望 activityIndi​​cator 运行 BEFORE 启动 SendRequest 方法。但这没有用。为什么? activityIndi​​catorSendRequest 完成时运行。

最佳答案

您正在使用 SendRequest 阻塞主线程。您还安排了启动指示器的操作,但它位于当前正在发生的事情之后的队列中,因此直到您释放主线程之后它才会运行。

因此,不要将指标更改放入操作中,而是将 SendRequest 放入操作中并在非主队列(即后台线程)上执行它。然后一切都会顺利,用户也会高兴。

关于swift - 为什么 NSOperationQueue.mainQueue 不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37077733/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com