我在斯威夫特新秀,有這樣的誤解是什麼方式,創造DispatchQueue Swift3
有什麼區別如何創建調度隊列中的差異
樣品1
let backgroundQueue = DispatchQueue(label: "com.app.queue",
qos: .background,
target: nil)
backgroundQueue.async {
print("Dispatched to background queue")
}
樣本2
let backgroundQueue = DispatchQueue.global()
backgroundQueue.async {
print("Dispatched to background queue")
}
據我所知,這兩種方法做同樣的
,或者例如這種做法
DispatchQueue.global(qos: .userInitiated).async {
print("user initiated task")
}
這是什麼意思?
請你解釋一下,如果我正確理解了這個參數'qos:'我們只需要說OS關於隊列優先級? –
我不確定你的問題是什麼問題,但我可能會推薦你參加WWDC 2015 [使用GCD構建響應式和高效應用程序](https://developer.apple.com/videos/play/wwdc2015/718/) ,它將向您介紹qos概念。我們的想法是,您可以指定GCD在高爭用環境中如何優先處理,並提供一個非常簡單的界面來控制各種變量,包括針對您的特定硬件調整的CPU調度優先級,I/O優先級,定時器合併等。 – Rob