Des coroutines dans des coroutines
Il est possible de lancer des coroutines dans des coroutines. Une relation de parenté est alors créée entre elles, elle est importante pour bien comprendre leur fonctionnement. La coroutine qui contient est appelée parent tandis que la coroutine contenue est appelée enfant.
Une coroutine parent est terminée uniquement lorsque ses coroutines enfants sont également terminées ou annulées.
Soit une coroutine qui lance elle-même deux coroutines qui sont mises en pause à l’aide de l’instruction delay :
import kotlinx.coroutines.delay
import kotlinx.coroutines.launch
import kotlinx.coroutines.runBlocking
fun main()
{
runBlocking {
println("Parent coroutine")
launch {
println("First child coroutine")
...