Threading in WorkManager

In Erste Schritte mit WorkManager wurde erwähnt, dass WorkManager Hintergrundarbeiten asynchron in Ihrem Namen ausführt. Die einfache Implementierung erfüllt die Anforderungen der meisten Apps. Für erweiterte Anwendungsfälle wie das Anhalten von Aufgaben sollten Sie sich über Threading und Nebenläufigkeit in WorkManager informieren.

WorkManager bietet vier verschiedene Arten von Arbeitsgrundlagen:

  • Worker ist die einfachste und auch in den vorherigen Abschnitten verwendete Implementierung. WorkManager führt sie automatisch in einem Hintergrundthread aus (kann überschrieben werden). Weitere Informationen zu Threading in Worker-Instanzen finden Sie unter Threading in Worker.
  • CoroutineWorker ist die empfohlene Implementierung für Kotlin-Nutzer. CoroutineWorker-Instanzen stellen eine Anhaltenfunktion für Hintergrundarbeiten bereit. Standardmäßig wird ein Dispatcher-Standard ausgeführt, den Sie anpassen können. Weitere Informationen zu Threading in CoroutineWorker-Instanzen finden Sie unter Threading in Coroutine Worker.
  • RxWorker ist die empfohlene Implementierung für RxJava-Nutzer. RxWorkers sollten verwendet werden, wenn ein Großteil Ihres vorhandenen asynchronen Codes in RxJava modelliert wird. Wie bei allen RxJava-Konzepten können Sie die Threading-Strategie Ihrer Wahl wählen. Weitere Informationen zum Threading in RxWorker-Instanzen finden Sie unter Threading in RxWorker.
  • ListenableWorker ist die Basisklasse für Worker, CoroutineWorker und RxWorker. Es richtet sich an Java-Entwickler, die mit Callback-basierten asynchronen APIs wie FusedLocationProviderClient interagieren müssen und nicht RxJava verwenden. Weitere Informationen zum Threading in ListenableWorker-Instanzen finden Sie unter Threading in ListenableWorker.