'dispatch_get_main_queue()' 的歧义使用

Dan*_*wer 10 ambiguous grand-central-dispatch ios swift dispatch-queue

如何使用DispatchQueue该类为 iOS 替换以下 Swift 代码?这是旧的 Swift 3 代码,最新的 Xcode 不会转换为 Swift 5。

dispatch_async(dispatch_get_main_queue()) { () -> Void in
  // code
}
Run Code Online (Sandbox Code Playgroud)

它给了我一个错误,说

'dispatch_get_main_queue()' 的歧义使用

dispatch_get_main_queue()

以下答案似乎是正确答案,我想使用它,但有人可以告诉我这是正确的吗?迅捷版

它说使用以下代码:

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

    // Background Thread

    DispatchQueue.main.async {
        // Run UI Updates
    }
}
Run Code Online (Sandbox Code Playgroud)

除了使用之外DispatchQueue,我还有什么其他选择可以解决这个错误?

小智 5

是的,它是正确的。这是新的更新语法。