Junior — Middle
Koliki je podrazumevani broj niti koje kreira Dispatchers.Default u Kotlin korutinama?
sobes.tech АИ
Одговор од АИ
Po podrazumevanom, Dispatchers.Default u Kotlin Coroutines kreira pool niti čija je veličina jednaka broju dostupnih procesorskih jezgara, ali ne manje od 2.
To znači da, ako uređaj ima 4 jezgra, pool će imati 4 niti; ako ima 1 jezgro — minimum 2 niti.
Ovo je urađeno radi optimalnog korišćenja CPU resursa pri izvršavanju paralelnih zadataka, izbegavajući kreiranje prevelikog broja niti koji bi mogao da smanji performanse zbog prebacivanja konteksta.
Primer:
println(Runtime.getRuntime().availableProcessors()) // broj jezgara
println(Dispatchers.Default.toString())
Na ovaj način, Dispatchers.Default se prilagođava hardverskim mogućnostima uređaja.