Sobes.tech
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:

  1. În declarația funcției, înainte de parametrul închiderii, să indicați @escaping.
  2. 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.