Junior — Middle
Jak implementovat vlákno pool pro vykonávání úkolů ve vaší aplikaci?
sobes.tech AI
Odpověď od AI
Pro implementaci vláknového bazénu v Android aplikaci můžete použít třídu ThreadPoolExecutor z Java nebo Kotlin.
Příklad v Kotlinu s použitím Executors.newFixedThreadPool:
import java.util.concurrent.Executors
// Vytvoření bazénu se 4 vlákny
val threadPool = Executors.newFixedThreadPool(4)
// Odeslání úloh k vykonání
threadPool.execute {
// Kód úlohy 1
println("Úloha 1 se provádí ve vlákně ${Thread.currentThread().name}")
}
threadPool.execute {
// Kód úlohy 2
println("Úloha 2 se provádí ve vlákně ${Thread.currentThread().name}")
}
// Po dokončení práce je třeba bazén správně uzavřít
threadPool.shutdown()
Pokud používáte Kotlin Coroutines, můžete použít Dispatchers.IO nebo vytvořit vlastní vláknový bazén pomocí newFixedThreadPoolContext.
Vláknový bazén umožňuje omezit počet vláken pracujících současně, což pomáhá efektivně využívat zdroje a vyhýbat se vytváření příliš velkého počtu vláken.