Sobes.tech
Junior — Middle

Ako implementovať pool vlákien na vykonávanie úloh vo vašej aplikácii?

sobes.tech AI

Odpoveď od AI

Na implementáciu vlákien v Android aplikácii môžete použiť triedu ThreadPoolExecutor z Java alebo Kotlin.

Príklad v Kotlin s použitím Executors.newFixedThreadPool:

import java.util.concurrent.Executors

// Vytvoríme bazén s 4 vláknami
val threadPool = Executors.newFixedThreadPool(4)

// Odosielame úlohy na vykonanie
threadPool.execute {
    // Kód úlohy 1
    println("Úloha 1 sa vykonáva vo vlákne ${Thread.currentThread().name}")
}

threadPool.execute {
    // Kód úlohy 2
    println("Úloha 2 sa vykonáva vo vlákne ${Thread.currentThread().name}")
}

// Po dokončení práce je potrebné bazén správne zatvoriť
threadPool.shutdown()

Ak používate Kotlin Coroutines, môžete použiť Dispatchers.IO alebo vytvoriť vlastný pool vlákien pomocou newFixedThreadPoolContext.

Pool vlákien umožňuje obmedziť počet vlákien, ktoré pracujú súčasne, čo pomáha efektívne využívať zdroje a vyhýbať sa vytváraniu príliš veľkého počtu vlákien.