WorkManager-এর মাধ্যমে শুরু করা-তে, আমরা উল্লেখ করেছি যে WorkManager আপনার হয়ে ব্যাকগ্রাউন্ডে অ্যাসিঙ্ক্রোনাসভাবে কাজ করে। বেসিক ইমপ্লিমেন্টেশন বেশিরভাগ অ্যাপের চাহিদা পূরণ করে। আরও উন্নত ব্যবহারের ক্ষেত্রে, যেমন কাজ বন্ধ হয়ে যাওয়া সঠিকভাবে ম্যানেজ করা, আপনাকে WorkManager-এ থ্রেডিং ও কনকারেন্সি সম্পর্কে জানতে হবে।
WorkManager-এর মাধ্যমে চার ধরনের ওয়ার্ক প্রিমিটিভ প্রদান করা হয়:
Workerহল সবচেয়ে সহজ ইমপ্লিমেন্টেশন, এবং এটি আপনি আগের বিভাগে দেখেছেন। WorkManager অটোমেটিক এটি ব্যাকগ্রাউন্ড থ্রেডে রান করে (যা আপনি ওভাররাইড করতে পারবেন)। ওয়ার্কারে থ্রেডিং-এWorkerইনস্ট্যান্সে থ্রেডিং সম্পর্কে আরও পড়ুন।- Kotlin ব্যবহারকারীদের জন্য
CoroutineWorkerপ্রয়োগ করার সাজেশন দেওয়া হয়।CoroutineWorkerইনস্ট্যান্স ব্যাকগ্রাউন্ডে কাজ করার জন্য সাসপেন্ডিং ফাংশন এক্সপোজ করে। ডিফল্ট হিসেবে, এগুলি একটি ডিফল্টDispatcherচালায়, যা আপনি কাস্টমাইজ করতে পারবেন। CoroutineWorker-এ থ্রেডিং-এCoroutineWorkerইনস্ট্যান্সে থ্রেডিং সম্পর্কে আরও পড়ুন। - RxJava ব্যবহারকারীদের জন্য
RxWorkerইমপ্লিমেন্ট করার সাজেশন দেওয়া হয়। আপনার আগে থেকে থাকা অ্যাসিঙ্ক্রোনাস কোডের বেশিরভাগই RxJava-তে মডেল করা থাকলে, RxWorkers ব্যবহার করা উচিত। সব RxJava কনসেপ্টের মতো, আপনি নিজের পছন্দমতো থ্রেডিং স্ট্র্যাটেজি বেছে নিতে পারবেন। RxWorker-এ থ্রেডিং-এRxWorkerইনস্ট্যান্সে থ্রেডিং সম্পর্কে আরও পড়ুন। Worker,CoroutineWorkerওRxWorker-এর জন্যListenableWorkerহল মূল ক্লাস। এটি সেইসব Java ডেভেলপারদের জন্য তৈরি করা হয়েছে যাদের কলব্যাক-ভিত্তিক অ্যাসিঙ্ক্রোনাস API-এর সাথে ইন্টার্যাক্ট করতে হয় যেমনFusedLocationProviderClientএবং RxJava ব্যবহার করছেন না। ListenableWorker-এ থ্রেডিং-এListenableWorkerইনস্ট্যান্সে থ্রেডিং সম্পর্কে আরও পড়ুন।