Sobes.tech
Junior — Middle

Async/Await yapısında asenkron programlamanın ne olduğunu açıklayabilir misiniz?

sobes.tech yapay zeka

AI'dan gelen yanıt

Async/Await kullanılarak yapılan asenkron programlama, uzun süren işlemleri (örneğin, ağ istekleri veya dosya okuma) ana yürütme akışını engellemeden yazmayı sağlar. Temel fikir, async olarak işaretlenmiş bir fonksiyonun, await ifadesinde yürütmesini durdurabilmesi ve asenkron bir işlemin tamamlanmasını beklerken akışı engellememesidir.

Bu, asenkronlukla çalışma işini kolaylaştırır, kodu daha okunabilir hale getirir ve zincirlenmiş geri çağırmalar veya promise zincirleri yerine ardışık gibi görünmesini sağlar.

Swift'te örnek:

func fetchData() async throws -> Data {
    let url = URL(string: "https://example.com/data.json")!
    let (data, _) = try await URLSession.shared.data(from: url)
    return data
}

Task {
    do {
        let data = try await fetchData()
        print("Veriler alındı: \(data)")
    } catch {
        print("Hata: \(error)")
    }
}