Sobes.tech
Junior — Middle

Pode-se usar a construção async/await dentro de um método de outro método?

sobes.tech IA

Resposta da IA

Em Swift (iOS), a construção async/await é usada para trabalhar com código assíncrono. O método onde deseja usar await deve ser declarado como async.

Não é possível simplesmente chamar await dentro de um método normal (síncrono) sem declará-lo como async. No entanto, você pode chamar um método assíncrono dentro de outro método assíncrono.

Exemplo:

func fetchData() async -> String {
    // operação assíncrona
    return "data"
}

func process() async {
    let data = await fetchData()
    print(data)
}

Se precisar chamar código assíncrono de um método síncrono, pode usar Task:

func syncMethod() {
    Task {
        let data = await fetchData()
        print(data)
    }
}