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

Process, Thread, Handler, AsyncTask cơ bản trong Android
5 (100%) 2 Hài lòng

  • 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à đomgs 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.

  • Một Process có nhiều thread.

  • Worker Thread là luồng chạy song song với Main Thread.

  • Thread là cha của AsyncTask và Handlers

  • Handler là công cụ giao tiếp giữa 2 thread với nhau (Main and woker), 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.

Thằng 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:

Chia sẻ là sexy

dotrinh

Một lập trình viên dũng cảm, hòa đồng, luôn sống tích cực và anh ấy quay tay khỏe và khéo trong môn bi lắc :) Xem thêm thông tin tại trang -> Giới thiệu

Thảo luận

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