- 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:
- Cách dùng AsyncTask trong Android
- Vòng đời Acivity trong android cơ bản
- Cách dùng Eventbus để truyền dữ liệu trong Android
- KHÔNG CÀI ĐƯỢC APP TRONG ANDROID
- Tổng quan nhất về ứng dụng Android
- Lập trình với Recyclerview trong Android – Bài 1 | dotrinh.com
- Truyền dữ liệu giữa 2 fragment trong android
- Lập trình phóng to thu nhỏ ảnh pinch in – pinch out trong Android
- Siêu tổng hợp android code snippets (cập nhật thường xuyên)
- “Các câu lệnh git thông dụng” cực cần thiết cho developer
- Fragment và Activity trong android cơ bản
- Có vấn đề gì nếu dùng hàm đã bị deprecate trong Android
- Ghi chú các bản release ứng dụng Tepra LITE Android và iOS | dotrinh.com
- LƯU Ý KHI ĐƯA APP LÊN APP STORE & TESTFLIGHT TỪ ĐÔ TRỊNH | dotrinh.com
- Lập trình với Recyclerview trong Android – Bài 2 | dotrinh.com