Sobes.tech
Middle — Middle+

Async/await-dən istifadə edərək sorğuları ardıcıl şəkildə necə istifadə etmək və dördüncü sorğu gözləmədən prosesi üçüncü sorğudan sonra bitirmək olar?

sobes.tech Süni İntellekt

AI-dan cavab

Async/await istifadə edərək ardıcıl sorğuları həyata keçirmək və üçüncü sorğudan sonra prosesi dayandırmaq imkanı üçün sadə dövr və nəticə və ya sayğac yoxlaması istifadə etmək olar. Məsələn, Swift-də:

func performRequests() async {
    for i in 1...4 {
        let result = await makeRequest(number: i)
        print("Sorğu \(i) tamamlandı, nəticə: \(result)")
        if i == 3 {
            print("Üçüncü sorğudan sonra prosesi dayandırırıq")
            break
        }
    }
}

func makeRequest(number: Int) async -> String {
    // Asinxron sorğunun simulasyonu
    try? await Task.sleep(nanoseconds: 1_000_000_000) // 1 saniyə
    return "Cavab \(number)"
}

Bu nümunədə, sorğular dövr daxilində await istifadə edilərək ardıcıl şəkildə həyata keçirilir. Üçüncü sorğudan sonra dövr break ilə dayandırılır və dördüncü sorğu icra edilmir.

Bu şəkildə, async/await asinxron kod yazmağa imkan verir ki, bu da sanki sinxron görünür və icra məntiqini asanlıqla idarə etməyə imkan verir.