Junior — Middle
Ce pași trebuie urmați pentru a utiliza atributul @escaping cu o închidere în definirea unei funcții?
sobes.tech AI
Răspuns de la AI
În Swift, atributul @escaping este utilizat pentru închiderile (closures) care sunt stocate și apelate după ce funcția în care sunt transmise a fost finalizată. Pentru a utiliza @escaping, trebuie:
- În declarația funcției, înainte de parametrul închiderii, să indicați
@escaping. - Acest lucru înseamnă că închiderea poate fi apelată mai târziu, de exemplu, asincron.
Exemplu:
func fetchData(completion: @escaping () -> Void) {
DispatchQueue.global().async {
// Execută o sarcină asincronă
completion() // apelează închiderea mai târziu
}
}
Fără @escaping, compilatorul nu va permite salvarea închiderii pentru a fi apelată după ieșirea din funcție.