Sobes.tech
Junior — Middle

Kuidas rakendada teie rakenduses tööde täitmiseks niidupoolt?

sobes.tech AI

Vastus AI-lt

Android rakenduses niitide paki implementimiseks saate kasutada Java või Kotlin ThreadPoolExecutor klassi.

Näide Kotlinis kasutades Executors.newFixedThreadPool:

import java.util.concurrent.Executors

// Loome 4 niidiga paki
val threadPool = Executors.newFixedThreadPool(4)

// Ülesannete saatmine täitmiseks
threadPool.execute {
    // Ülesande 1 kood
    println("Ülesanne 1 täidetakse niidil ${Thread.currentThread().name}")
}

threadPool.execute {
    // Ülesande 2 kood
    println("Ülesanne 2 täidetakse niidil ${Thread.currentThread().name}")
}

// Pärast töö lõpetamist tuleb paki õigesti sulgeda
threadPool.shutdown()

Kui kasutate Kotlin Coroutines, saate kasutada Dispatchers.IO või luua oma niidipaki newFixedThreadPoolContext abil.

Niidipakk võimaldab piirata samaaegselt töötavate niitide arvu, mis aitab ressursse tõhusalt kasutada ja vältida liiga paljude niitide loomist.