Sobes.tech
Junior — Middle

Jaké metody se používají k organizaci bezpečného sdíleného přístupu korutin k jednomu zdroji?

sobes.tech AI

Odpověď od AI

Pro bezpečný společný přístup korutin ke zdroji v Androidu (Kotlin) se obvykle používají následující metody:

  • Mutex z kotlinx.coroutines — zajišťuje vzájemné vyloučení, umožňuje pouze jedné korutině současně přístup ke zdroji.
  • Channel — pro přenos dat mezi korutinami, což pomáhá zabránit přímému sdílenému přístupu.
  • Atomické operace — pro jednoduché případy, kdy je třeba bezpečně aktualizovat primitives.

Příklad použití Mutex:

val mutex = Mutex()
var sdílenýZdroje = 0

suspend fun bezpečnéZvýšení() {
    mutex.withLock {
        sdílenýZdroje++
    }
}

Tento přístup zabraňuje závodním podmínkám a zajišťuje správné chování při paralelním provádění korutin.