优先级和背景在 ios 8 中已弃用

Posted

技术标签:

【中文标题】优先级和背景在 ios 8 中已弃用【英文标题】:priority and background was deprecated in ios 8 【发布时间】:2017-08-17 12:54:47 【问题描述】:

我有一个使用旧的 swift 代码开发的应用程序。现在我将它更新为最新的 swift 语法。在更新时我发现调度队列很困难,这里它给出了两个警告,因为全局(优先级)在 ios 8 中已弃用,而背景在 ios 8 中已弃用。

DispatchQueue.global(priority: DispatchQueue.GlobalQueuePriority.background).async(execute:  [weak self] in     //Getting warning in this line
    if let strongSelf = self 
        strongSelf.populateOutBoundContacts()
        strongSelf.lookForContactsToPresent()
    
)

【问题讨论】:

***.com/a/37806522/5362750 看看这个 【参考方案1】:

语法已更改为DispatchQueue.global(qos: DispatchQoS.QoSClass)。不需要调用async(execute),可以直接调用async,在闭包中编写要执行的代码。

DispatchQueue.global(qos: .background).async [weak self] in    
    if let strongSelf = self 
        strongSelf.populateOutBoundContacts()
        strongSelf.lookForContactsToPresent()
            

在更新旧代码时,我强烈建议您阅读各个类的文档并使用 Xcode 的自动完成功能,它可以为您节省大量寻找新语法/方法的时间。

【讨论】:

很高兴我能帮上忙。如果您觉得我的回答有用,请考虑接受。

以上是关于优先级和背景在 ios 8 中已弃用的主要内容,如果未能解决你的问题,请参考以下文章

UITabBarItem setFinishedSelectedImage:在 iOS7 中已弃用

subscriberCellularProvider在iOS 12.0中已弃用

SLServiceTypeFacebook' 在 iOS 11.0 中已弃用

openURL:在 iOS 10 中已弃用

NSLayoutConstraint 在 iOS 11 中已弃用的代码和底部布局指南中定义

如何从 UIAlertView 迁移(在 iOS8 中已弃用)