Junior — Middle
Кадом сатҳи сифатии хизмати DispatchQos ба назар мерасад, ки муҳимтарин ё баландтарин аст?
sobes.tech AI
Ҷавоб аз AI
Дар iOS, вақте ки бо GCD (Grand Central Dispatch) кор мекунед, сатҳи сифати хизматрасонӣ (Quality of Service, QoS) афзалиятро муайян мекунад. Баландтарин афзалият userInteractive аст. Он барои вазифаҳое пешбинӣ шудааст, ки ба интерфейс таъсир мерасонанд ва бояд ҳарчи зудтар иҷро шаванд, то ҷавобгӯии барнома таъмин карда шавад (масалан, анимациялар, коркарди воридоти корбар).
Сатҳҳои асосии QoS дар тартиби коҳишёбанда:
userInteractive— баландтарин афзалият, барои вазифаҳое, ки ба ҷавобдиҳӣ фаврӣ талаб мекунанд.userInitiated— вазифаҳои оғозшуда аз ҷониби корбар, ки бояд зуд ба анҷом расанд.default— сатҳи пешфарз.utility— барои вазифаҳои дарозмуддат бо афзалияти паст.background— барои вазифаҳои пасзамина, ки ба таҷрибаи корбар таъсир намерасонанд.
Масалан, сохтани навбат бо афзалияти баланд:
let queue = DispatchQueue.global(qos: .userInteractive)
queue.async {
// коди бо афзалияти баланд
}