في بدء استخدام WorkManager، ذكرنا أنّ WorkManager يُجري العمل في الخلفية بشكل غير متزامن نيابةً عنك. يلبّي التنفيذ الأساسي متطلبات معظم التطبيقات. بالنسبة إلى حالات الاستخدام الأكثر تقدمًا، مثل التعامل بشكل صحيح مع العمل الذي يتم إيقافه، ينبغي أن تتعرف على سلاسل المحادثات والتزامن في WorkManager.
هناك أربعة أنواع مختلفة من أساسيات العمل التي يوفرها WorkManager:
Workerهو أبسط عملية تنفيذ، والعملية التي رأيتها في الأقسام السابقة. يقوم WorkManager تلقائيًا بتشغيله على سلسلة محادثات في الخلفية (يمكنك تجاوزها). يمكنك قراءة المزيد من المعلومات حول سلاسل المحادثات في حالاتWorkerمن خلال Threading in Worker.CoroutineWorkerهي طريقة التنفيذ المُقترحة لمستخدمي Kotlin. تعرض مثيلاتCoroutineWorkerدالة تعليق للعمل في الخلفية. تشغِّل هذه الأجهزة تلقائيًا قيمةDispatcherتلقائية يمكنك تخصيصها. يمكنك الاطّلاع على مزيد من المعلومات حول سلاسل المحادثات فيCoroutineWorkerحالات في Threading in CoroutineWorker.RxWorkerهو التنفيذ الموصى به لمستخدمي RxJava. يجب استخدام RxWorkers إذا كان الكثير من التعليمات البرمجية غير المتزامنة الحالية قد تم تصميمها في RxJava. كما هو الحال مع جميع مفاهيم RxJava، لك حرية اختيار استراتيجية الترابط التي تختارها. يمكنك الاطّلاع على مزيد من المعلومات حول سلاسل المحادثات في مثيلاتRxWorkerفي Threading in RxWorker.ListenableWorkerهي الفئة الأساسية لكل منWorkerوCoroutineWorkerوRxWorker. وهو مخصص لمطوّري برامج Java الذين يتعين عليهم التفاعل مع واجهات برمجة التطبيقات غير المتزامنة والمستندة إلى معاودة الاتصال مثلFusedLocationProviderClientولا يستخدمون RxJava. يمكنك الاطّلاع على مزيد من المعلومات حول سلاسل المحادثات في مثيلاتListenableWorkerفي Threading in ListenableWorker.