Junior — Middle
Ce se întâmplă atunci când se utilizează metoda sync pe coada globală DispatchQueue în Swift?
sobes.tech AI
Răspuns de la AI
Metoda sync pe coada globală DispatchQueue în Swift execută blocul de cod transmis sincron pe această coadă. Aceasta înseamnă că firul de execuție curent va aștepta finalizarea blocului înainte de a continua.
Dacă apelați DispatchQueue.global().sync { ... }, atunci:
- Firul de execuție curent este blocat până când blocul se finalizează.
- Blocul se execută pe coada globală (fir de fundal).
Este important să rețineți că apelarea sync pe aceeași coadă pe care deja rulează codul poate duce la un deadlock.
Exemplu:
DispatchQueue.global().sync {
print("Executat pe coada globală")
}
print("Acest cod va fi executat după bloc")