Sobes.tech
Junior — Middle

MainQueue-dəki bütün tapşırıqlar əsas axında yerinə yetirilməlidir?

sobes.tech Süni İntellekt

AI-dan cavab

Yox, MainQueue-dən olan bütün tapşırıqlar əsas axında yerinə yetirilməlidir. iOS-də MainQueue (əsas növbə) UI-ni yeniləmək və əsas axında yerinə yetirilməsi tələb olunan interfeys elementləri ilə işləmək üçün nəzərdə tutulmuşdur.

Əgər tapşırıq ağır hesablamalar və ya şəbəkə sorğuları ilə əlaqəlidirsə, onu fon axınında (qlobal növbələr və ya öz növbələri vasitəsilə) yerinə yetirmək daha yaxşıdır ki, UI bloklanmasın və tətbiqin cavabvermə qabiliyyəti pisləşməsin.

Nümunə:

DispatchQueue.global().async {
    // Ağır tapşırıq
    let result = performHeavyCalculation()
    DispatchQueue.main.async {
        // Nəticə ilə UI-ni yeniləyin
        self.label.text = "Nəticə: \(result)"
    }
}