Dalam artikel Mulai menggunakan WorkManager, kami menyebutkan bahwa WorkManager melakukan pekerjaan latar belakang secara asinkron atas nama Anda. Penerapan dasar ini memenuhi permintaan sebagian besar aplikasi. Untuk kasus penggunaan lanjutan lainnya, seperti menangani dengan benar pekerjaan yang dihentikan, Anda harus mempelajari threading dan konkurensi di WorkManager.
Ada empat jenis elemen dasar pekerjaan yang disediakan WorkManager:
Worker
adalah penerapan yang paling sederhana, dan sudah Anda lihat di bagian sebelumnya. WorkManager otomatis menjalankannya pada thread latar belakang (yang bisa diganti). Baca selengkapnya tentang threading di instanceWorker
dalam Threading di Worker.CoroutineWorker
merupakan penerapan yang direkomendasikan bagi pengguna Kotlin. InstanceCoroutineWorker
memperlihatkan fungsi penangguhan untuk pekerjaan latar belakang. Secara default, jenis ini menjalankanDispatcher
default, yang bisa Anda sesuaikan. Baca selengkapnya tentang threading di instanceCoroutineWorker
dalam Threading di CoroutineWorker.RxWorker
adalah penerapan yang direkomendasikan bagi pengguna RxJava. RxWorkers harus digunakan jika banyak kode asinkron yang ada dicontohkan dalam RxJava. Seperti semua konsep RxJava, Anda bebas memilih strategi threading pilihan Anda. Baca selengkapnya tentang threading di instanceRxWorker
dalam Threading di RxWorker.ListenableWorker
adalah class dasar untukWorker
,CoroutineWorker
, danRxWorker
. Hal ini ditujukan bagi developer Java yang harus berinteraksi dengan API asinkron berbasis callback sepertiFusedLocationProviderClient
dan tidak menggunakan RxJava. Baca selengkapnya tentang threading di instanceListenableWorker
dalam Threading di ListenableWorker.