Sobes.tech
Junior — Middle

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

sobes.tech AI

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

Kotlin-ში კორუტინების გამოყენებით ერთდროულად რამდენიმე დავალების შესრულებისთვის, შეგიძლიათ გამოიყენოთ:

  • launch — იწყებს ახალი კორუტინას, რომელიც მუშაობს პარალელურად სხვა კორუტინებთან.
  • async — იწყებს კორუტინას, რომელიც აბრუნებს შედეგს Deferred-ის საშუალებით.

მაგალითი ორი დავალების ერთდროულად დაწყებისა და მათი შედეგების მოლოდინის:

import kotlinx.coroutines.*

fun main() = runBlocking {
    val job1 = async {
        delay(1000)
        "დავალების 1 შედეგი"
    }
    val job2 = async {
        delay(500)
        "დავალების 2 შედეგი"
    }

    // ველით ორივე შედეგს
    val result1 = job1.await()
    val result2 = job2.await()

    println(result1)
    println(result2)
}

ამ გზით, კორუტინები ადვილად საშუალებას იძლევა რამდენიმე დავალების პარალელურად დაწყება და მათი შედეგების სინქრონიზაცია.