Junior — Middle
Je možné hovoriť o existencii hierarchie medzi korutinami počas ich vykonávania?
sobes.tech AI
Odpoveď od AI
Áno, v Kotlinu môžu mať korutiny hierarchickú štruktúru. Keď spustíte korutinu v kontexte inej korutiny (napríklad pomocou launch vnútri inej korutiny), vytvorí sa vzťah rodič-dieťa. Ak je rodičovská korutina zrušená, všetky jej deti korutiny sa automaticky zrušia. To umožňuje riadiť životný cyklus skupín korutín a predchádzať únikom zdrojov.
Príklad:
val parentJob = CoroutineScope(Dispatchers.Default).launch {
val childJob = launch {
// práca detskej korutiny
}
}
// Pri zrušení parentJob sa automaticky zruší aj childJob
parentJob.cancel()