Junior — Middle
Πώς μπορεί να υλοποιηθεί η ταυτόχρονη εκτέλεση πολλαπλών εργασιών με τη βοήθεια των κορουτινών;
sobes.tech AI
Απάντηση από AI
Για την ταυτόχρονη εκτέλεση πολλαπλών εργασιών με τις coroutine σε Kotlin, μπορείς να χρησιμοποιήσεις:
launch— ξεκινά μια νέα coroutine που εκτελείται παράλληλα με άλλες.async— ξεκινά μια coroutine που επιστρέφει ένα αποτέλεσμα μέσω του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)
}
Έτσι, οι coroutine επιτρέπουν την εύκολη εκκίνηση πολλαπλών εργασιών παράλληλα και τον συγχρονισμό των αποτελεσμάτων τους.