स्विफ्ट 5 के लिए अपडेट करें
सीरियल कतार
let serialQueue = DispatchQueue.init(label: "serialQueue")
serialQueue.async {
// code to execute
}
समवर्ती कतार
let concurrentQueue = DispatchQueue.init(label: "concurrentQueue", qos: .background, attributes: .concurrent, autoreleaseFrequency: .inherit, target: nil)
concurrentQueue.async {
// code to execute
}
से एप्पल प्रलेखन :
पैरामीटर
लेबल
कतार में संलग्न करने के लिए एक स्ट्रिंग लेबल विशिष्ट रूप से डिबगिंग टूल जैसे कि इंस्ट्रूमेंट्स, सैंपल, स्टैकशॉट्स और क्रैश रिपोर्ट में इसकी पहचान करता है। क्योंकि एप्लिकेशन, लाइब्रेरी और फ्रेमवर्क सभी अपनी प्रेषण कतार बना सकते हैं, एक रिवर्स-डीएनएस नामकरण शैली (com.example.myqueue) की सिफारिश की जाती है। यह पैरामीटर वैकल्पिक है और NULL हो सकता है।
क्यूओएस
गुणवत्ता सेवा के स्तर कतार के साथ संबद्ध करने के लिए। यह मान उस प्राथमिकता को निर्धारित करता है जिस पर सिस्टम निष्पादन के लिए कार्य शेड्यूल करता है। संभावित मानों की सूची के लिए, DispatchQoS.QoSClass देखें।
गुण
कतार से जुड़ने का गुण। समसामयिक विशेषता शामिल करें एक प्रेषण कतार बनाएँ जो समवर्ती कार्यों को निष्पादित करती है। यदि आप उस विशेषता को छोड़ देते हैं, तो प्रेषण कतार क्रमिक रूप से कार्य निष्पादित करती है।
autoreleaseFrequency
वह आवृत्ति जिससे ब्लॉक शेड्यूल किए गए ऑब्जेक्ट को ऑटोरेलिज़ करते हैं जो कतार शेड्यूल करते हैं। संभावित मानों की सूची के लिए, DispatchQueue.AutoreleaseFrequency देखें ।
लक्ष्य
ब्लॉक को निष्पादित करने के लिए लक्ष्य कतार। DISPATCH_TARGET_QUEUE_DEFAULT निर्दिष्ट करें यदि आप चाहते हैं कि प्रणाली एक कतार प्रदान करे जो वर्तमान वस्तु के लिए उपयुक्त हो।