Middle
Xidmətin keyfiyyəti (Quality of Service) nədir?
sobes.tech Süni İntellekt
AI-dan cavab
iOS-də Xidmətin Keyfiyyəti (QoS) — bu vəzifələrin (DispatchQueue) icrasının prioritetini idarə etməyə imkan verən sistemdir. Sistem bu məlumatlardan resursları (CPU vaxtı, enerji) bölüşdürmək üçün istifadə edir.
QoS-in bir neçə səviyyəsi mövcuddur:
- UserInteractive: İstifadəçi interfeysi ilə birbaşa əlaqəli və dərhal icra olunması lazım olan vəzifələr (məsələn, animasiyalar, toxunma hadisələrinin işlənməsi).
- UserInitiated: İstifadəçi tərəfindən başlanmış, lakin dərhal cavab tələb etməyən vəzifələr (məsələn, məzmunu yükləmək və göstərmək üçün qısa gözləmə).
- Utility: Uzunmüddətli vəzifələr, UI-ni bloklamayan, lakin müəyyən vaxt tələb edən (məsələn, məlumatların fon rejimində yüklənməsi, hesablamalar).
- Background: Fon rejimində icra olunan və istifadəçidən gizli vəzifələr (məsələn, məlumatların sinxronizasiyası).
- Default: Standart prioritet, QoS açıq şəkildə göstərilmədikdə istifadə olunur. Utility və Background arasında yerləşir.
- Unspecified: QoS istifadə edilməməli və ya çağıran kontekstdən ötürülür.
// UserInitiated QoS ilə növbənin yaradılması nümunəsi
let userInitiatedQueue = DispatchQueue.global(qos: .userInitiated)
userInitiatedQueue.async {
// İstifadəçi tərəfindən başlanmış yüksək prioritetli vəzifənin icrası
}
// Background QoS ilə növbənin yaradılması nümunəsi
let backgroundQueue = DispatchQueue.global(qos: .background)
backgroundQueue.async {
// Fon vəzifəsinin icrası
}
QoS-dan düzgün istifadə enerji sərfiyyatını optimallaşdırmağa, UI-nin cavabvermə qabiliyyətini yaxşılaşdırmağa və sistem resurslarından daha səmərəli istifadə etməyə kömək edir. Vəzifənin prioriteti azaldıla bilər, lakin növbənin prioritetinə nisbətən artırıla bilməz. Əgər vəzifə daha aşağı prioritetli başqa növbəyə ötürülərsə, o, ilkin daha yüksək prioritetini saxlayacaq.