Google se compromete a impulsar la igualdad racial para las comunidades afrodescendientes. Obtén información al respecto.

Cómo ejecutar subprocesos en WorkManager

En las secciones anteriores, mencionamos que WorkManager realiza por ti trabajos en segundo plano de forma asíncrona. La implementación básica aborda las demandas de la mayoría de las apps. Para casos prácticos más avanzados, como el manejo correcto de la detención del trabajo, debes aprender acerca de los subprocesos y la concurrencia en WorkManager.

Hay cuatro tipos de primitivas de trabajo diferentes que proporciona WorkManager:

  • Worker es la implementación más simple y la que viste en las secciones anteriores. WorkManager lo ejecuta automáticamente en un subproceso en segundo plano (que puedes anular). Obtén más información sobre los subprocesos de Worker en Cómo ejecutar subprocesos en Worker.
  • CoroutineWorker es la implementación recomendada para usuarios de Kotlin. CoroutineWorker expone una función de suspensión para el trabajo en segundo plano. De forma predeterminada, ejecutan un Dispatcher predeterminado, que puedes personalizar. Obtén más información sobre los subprocesos de CoroutineWorker en Cómo ejecutar subprocesos en CoroutineWorker.
  • RxWorker es la implementación recomendada para usuarios de RxJava2. Debes usar RxWorkers si se modela una gran cantidad de tu código asíncrono existente en RxJava. Al igual que con todos los conceptos de RxJava2, puedes elegir la estrategia de subprocesos que prefieras. Obtén más información acerca de los subprocesos de RxWorker en Cómo ejecutar subprocesos en RxWorker.
  • ListenableWorker es la clase base para Worker, CoroutineWorker y RxWorker. Está destinado a los desarrolladores de Java que tienen que interactuar con API asincrónicas basadas en devoluciones de llamada como FusedLocationProviderClient y que no utilizan RxJava2. Obtén más información sobre los subprocesos de ListenableWorker en Cómo ejecutar subprocesos en ListenableWorker.