Threading di WorkManager

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 instance Worker dalam Threading di Worker.
  • CoroutineWorker merupakan penerapan yang direkomendasikan bagi pengguna Kotlin. Instance CoroutineWorker memperlihatkan fungsi penangguhan untuk pekerjaan latar belakang. Secara default, jenis ini menjalankan Dispatcher default, yang bisa Anda sesuaikan. Baca selengkapnya tentang threading di instance CoroutineWorker 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 instance RxWorker dalam Threading di RxWorker.
  • ListenableWorker adalah class dasar untuk Worker, CoroutineWorker, dan RxWorker. Hal ini ditujukan bagi developer Java yang harus berinteraksi dengan API asinkron berbasis callback seperti FusedLocationProviderClient dan tidak menggunakan RxJava. Baca selengkapnya tentang threading di instance ListenableWorker dalam Threading di ListenableWorker.