Process, Thread, Handler, AsyncTask cơ bản trong Android

5/5 - (3 votes)
  • Tại sao lại cần chạy đồng thời? Mặc định source ứng dụng chạy trên 1 thread chính (luồng chính), và mỗi câu lệnh chạy theo một trình tự từ trên xuống dưới trong thread đó. Nếu đợi cho đến lúc mà tác vụ kết thúc thì sẽ rất lâu đôi khi bị đơ – treo, ko tốt về trải nghiệm người dùng, chính vì thế chúng ta cần chạy các tác vụ đó 1 cách không đồng bộ hay nó các khác chạy nó trong 1 thread khác.
  • Có thể làm bằng ngôn ngữ java thuần (Thread & Handler) hoặc bằng 1 chức năng trong Android framework có tên là AsyncTask.
  • Nếu trong 5s một Activity không hoạt động để người dùng tương tác với nó thì sẽ bị crash và đóng app.
  • Main Thread thường là UI Thread, nhưng nó cũng có thể là Thread khác. Ví dụ các Thread chính không cần UI.
  • Worker Thread là luồng chạy song song với Main Thread.
  • Một Process có thể có nhiều thread.
  • Handler là công cụ giao tiếp giữa 2 thread với nhau (Main and worker), nhận nhiệm vụ trao đổi dữ liệu giữa 2 thread.
  • AsyncTask là ôm chọn cả Thread và Handler rồi. Chỉ cần override lại các hàm cần thiết thôi xem cách làm ở đây https://dotrinh.com/cach-dung-asynctask-trong-android/
  • Khi nào dùng AsyncTask? Nó chạy ngầm và đưa ra kết quả mà ko cần thao tác nhiều như thread hay handlers. Cái này nó làm mọi thứ cho mình, mình chỉ cần biết phương thức nào để ghi đè override mà thôi.

Các bài viết không xem thì tiếc:

Thảo luận

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Xem thêm
Ngữ cảnh Ngữ cảnh là có 1 Activity chứa 2…
 
 
 
 
Facetime iPhone

Main Menu