Junior — Middle
Can you name the main parts and elements that make up coroutines in Kotlin?
sobes.tech AI
Answer from AI
The main parts of a Kotlin coroutine:
- CoroutineScope — the scope of the coroutine, defines its lifecycle and context.
- CoroutineContext — a set of elements such as dispatcher, coroutine name, and others.
- Dispatcher — determines on which thread or thread pool the coroutine will run (e.g., Dispatchers.IO, Dispatchers.Main).
- Job — represents the coroutine task, allows managing its lifecycle (cancellation, waiting).
- Suspend functions — functions that can suspend execution without blocking the thread.
Example of creating a coroutine:
import kotlinx.coroutines.*
fun main() = runBlocking {
launch(Dispatchers.IO) {
// code executed in coroutine
delay(1000)
println("Hello from coroutine")
}
}