我有以下代码,我一直试图从swift 2转换为swift 3.这是我到目前为止所做的。
DispatchQueue.async(group: DispatchQueue.global(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0),execute: {
self.controllerDelegate?.codeToRun(progressWindowViewController: self)
})
我收到一条错误消息,指出无法调用' global'使用类型(int,int)的参数列表。我知道全局队列需要这个,除非他们在swift 3中改变它吗? 在Swift 3中执行全局队列的正确方法是什么?
以前的Swift 2 Equivlent
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0),{
self.controllerDelegate?.codeToRun(self)
})
答案 0 :(得分:10)
试试这个它会起作用。
DispatchQueue.global(qos: .background).async {
DispatchQueue.main.async {
}
})
如果您仍然需要任何帮助,请随时在这里询问。
答案 1 :(得分:2)
实际上,对您的问题采用更简单,更简单的方法是:
DispatchQueue.global(qos: .default).async { ... }