Middle
Əsas icra axını istifadə etmədən qatman əməliyyatlarını ayrı axınlarda həyata keçirmək mümkündürmü?
sobes.tech Süni İntellekt
AI-dan cavab
iOS-da CALayer ilə əməliyyatlar, məsələn, qatlamın xüsusiyyətlərini dəyişdirmək (məsələn, mövqe, şəffaflıq, çevrilmə), əsas axında yerinə yetirilməlidir, çünki UIKit və Core Animation çox axın təhlükəsiz deyil. Ancaq, ağır hesablamalar və ya qatlam üçün məlumatların hazırlanması (məsələn, şəkil yaratmaq, yolların hesablanması) fon axınında yerinə yetirilə bilər və qatlam yeniləmələri artıq əsas axında tətbiq oluna bilər.
Nümunə:
DispatchQueue.global().async {
// Ağır hesablamalar
let image = generateImage()
DispatchQueue.main.async {
layer.contents = image.cgImage
}
}
Beləliklə, qatlam əməliyyatlarını ayrı axınlarda birbaşa yerinə yetirmək olmaz, amma məlumatların hazırlanması mümkündür.