Sobes.tech
Junior — Middle

როგორ შეიძლება დააყოვნოთ კორუტინების შესრულება ასინქრონულ პროგრამაში?

sobes.tech AI

პასუხი AI-სგან

კოტლინში, კორუტინების შესრულების დაგვიანებისთვის შეგიძლიათ გამოიყენოთ ფუნქცია delay(), რომელიც აჩერებს მიმდინარე კორუტინას განსაზღვრულ დროს, არ ბლოკავს ნაკადს.

მაგალითი:

import kotlinx.coroutines.*

fun main() = runBlocking {
    println("დაწყება")
    delay(1000L) // 1 წამის დაგვიანება
    println("დასრულება შემდეგ დაგვიანების")
}

სხვადასხვა Thread.sleep()-ისგან განსხვავებით, delay() არ ბლოკავს ნაკადს, არამედ საშუალებას აძლევს სხვა კორუტინებს იმ დროს შესრულებას, რაც უფრო ეფექტურია ასინქრონული პროგრამირებისათვის.