ชุดข้อความใน WorkManager
จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน
บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ
ในการเริ่มต้นใช้งาน WorkManager
เราได้กล่าวถึงว่า WorkManager จะทำงานในเบื้องหลังแบบไม่พร้อมกันในนามของคุณ
การติดตั้งใช้งานพื้นฐานจะตอบสนองความต้องการของแอปส่วนใหญ่ สำหรับ Use Case ขั้นสูงเพิ่มเติม เช่น การจัดการการหยุดงานอย่างถูกต้อง คุณควรศึกษาเกี่ยวกับ Thread และการทำงานพร้อมกันใน WorkManager
WorkManager มี Primitive งาน 4 ประเภท ได้แก่
Worker
เป็นการติดตั้งใช้งานที่ง่ายที่สุด
และเป็นวิธีที่คุณเห็นในส่วนก่อนหน้า WorkManager จะเรียกใช้
โดยอัตโนมัติในเธรดเบื้องหลัง (ซึ่งคุณลบล้างได้) อ่านเพิ่มเติมเกี่ยวกับการแยกชุดข้อความย่อย
ในอินสแตนซ์ Worker
ได้ที่การแยกชุดข้อความย่อยใน Worker
CoroutineWorker
เป็นการติดตั้งใช้งานที่แนะนำสำหรับผู้ใช้ Kotlin อินสแตนซ์ CoroutineWorker
แสดงฟังก์ชันการระงับสำหรับงานในเบื้องหลัง โดยค่าเริ่มต้น ระบบจะเรียกใช้
ค่าเริ่มต้นDispatcher
ซึ่งคุณปรับแต่งได้ อ่านเพิ่มเติมเกี่ยวกับการแยกชุดข้อความย่อยใน
CoroutineWorker
อินสแตนซ์ในการแยกชุดข้อความย่อยใน CoroutineWorker
RxWorker
เป็นการติดตั้งใช้งานที่แนะนําสําหรับผู้ใช้ RxJava
ควรใช้ RxWorker หากโค้ดแบบอะซิงโครนัสที่มีอยู่จำนวนมากสร้างขึ้นใน RxJava เช่นเดียวกับแนวคิด RxJava ทั้งหมด
คุณสามารถเลือกกลยุทธ์การกำหนดเธรดที่ต้องการได้ อ่านเพิ่มเติมเกี่ยวกับ
การแยกชุดข้อความย่อยในอินสแตนซ์ RxWorker
ในการแยกชุดข้อความย่อยใน RxWorker
ListenableWorker
เป็นคลาสฐาน
สำหรับ Worker
, CoroutineWorker
และ RxWorker
โดยมีไว้สำหรับ
นักพัฒนาซอฟต์แวร์ Java ที่ต้องโต้ตอบกับ API แบบอะซิงโครนัสที่อิงตามการเรียกกลับ
เช่น FusedLocationProviderClient
และไม่ได้ใช้ RxJava อ่านเพิ่มเติม
เกี่ยวกับการแยกชุดข้อความย่อยในอินสแตนซ์ ListenableWorker
ได้ที่การแยกชุดข้อความย่อยใน ListenableWorker
ตัวอย่างเนื้อหาและโค้ดในหน้าเว็บนี้ขึ้นอยู่กับใบอนุญาตที่อธิบายไว้ในใบอนุญาตการใช้เนื้อหา Java และ OpenJDK เป็นเครื่องหมายการค้าหรือเครื่องหมายการค้าจดทะเบียนของ Oracle และ/หรือบริษัทในเครือ
อัปเดตล่าสุด 2025-07-27 UTC
[[["เข้าใจง่าย","easyToUnderstand","thumb-up"],["แก้ปัญหาของฉันได้","solvedMyProblem","thumb-up"],["อื่นๆ","otherUp","thumb-up"]],[["ไม่มีข้อมูลที่ฉันต้องการ","missingTheInformationINeed","thumb-down"],["ซับซ้อนเกินไป/มีหลายขั้นตอนมากเกินไป","tooComplicatedTooManySteps","thumb-down"],["ล้าสมัย","outOfDate","thumb-down"],["ปัญหาเกี่ยวกับการแปล","translationIssue","thumb-down"],["ตัวอย่าง/ปัญหาเกี่ยวกับโค้ด","samplesCodeIssue","thumb-down"],["อื่นๆ","otherDown","thumb-down"]],["อัปเดตล่าสุด 2025-07-27 UTC"],[],[],null,["# Threading in WorkManager\n\nIn [Getting started with WorkManager](/topic/libraries/architecture/workmanager/basics),\nwe mentioned that WorkManager performs background work asynchronously on your\nbehalf. The basic implementation addresses the demands of most apps. For more\nadvanced use cases, such as correctly handling work being stopped, you should\nlearn about threading and concurrency in WorkManager.\n\nThere are four different types of work primitives provided by WorkManager:\n\n- [`Worker`](/reference/androidx/work/Worker) is the simplest implementation, and the one you have seen in previous sections. WorkManager automatically runs it on a background thread (that you can override). Read more about threading in `Worker` instances in [Threading in Worker](/topic/libraries/architecture/workmanager/advanced/worker).\n- [`CoroutineWorker`](/reference/kotlin/androidx/work/CoroutineWorker) is the recommended implementation for Kotlin users. `CoroutineWorker` instances expose a suspending function for background work. By default, they run a default `Dispatcher`, which you can customize. Read more about threading in `CoroutineWorker` instances in [Threading in CoroutineWorker](/topic/libraries/architecture/workmanager/advanced/coroutineworker).\n- [`RxWorker`](/reference/androidx/work/RxWorker) is the recommended implementation for RxJava users. RxWorkers should be used if a lot of your existing asynchronous code is modelled in RxJava. As with all RxJava concepts, you are free to choose the threading strategy of your choice. Read more about threading in `RxWorker` instances in [Threading in RxWorker](/topic/libraries/architecture/workmanager/advanced/rxworker).\n- [`ListenableWorker`](/reference/androidx/work/ListenableWorker) is the base class for `Worker`, `CoroutineWorker`, and `RxWorker`. It is intended for Java developers who have to interact with callback-based asynchronous APIs such as `FusedLocationProviderClient` and are not using RxJava. Read more about threading in `ListenableWorker` instances in [Threading in ListenableWorker](/topic/libraries/architecture/workmanager/advanced/listenableworker)."]]