Câu hỏi phỏng vấn Android
Câu hỏi

Sự khác biệt giữa Handler, AsyncTaskThread trong Android là gì?

Câu trả lời

Trong Android, Handler, AsyncTaskThread là ba cơ chế quản lý luồng và thực hiện công việc nền khác nhau, mỗi cái có ưu và nhược điểm riêng:

Handler

  • Handler cho phép bạn gửi và xử lý các đối tượng MessageRunnable liên kết với hàng đợi tin nhắn (MessageQueue) của một luồng. Mỗi luồng có hàng đợi tin nhắn riêng của nó.
  • Handler thường được sử dụng để giao tiếp với giao diện người dùng từ một luồng nền, ví dụ như cập nhật một thanh tiến trình.
  • Sử dụng Handler có lợi thế của hàng đợi tin nhắn, cho phép bạn lên lịch tin nhắn hoặc cập nhật nhiều phần tử giao diện người dùng hoặc có các tác vụ lặp lại.

AsyncTask

  • AsyncTask là một cơ chế giúp thực hiện các tác vụ nền một cách đơn giản, không chạy trên luồng giao diện người dùng (UI thread) nhưng vẫn có thể tương tác với UI sau khi hoàn thành.
  • AsyncTask thực sự sử dụng Handler bên trong nhưng cung cấp một cách tiện lợi hơn để xử lý các tác vụ nền như lấy dữ liệu từ web services.
  • AsyncTask có các hạn chế n...
middle

middle

Gợi ý câu hỏi phỏng vấn

middle

Trong Android, có các dạng context nào?

senior

Cách bundle trong Android như thế nào?

middle

Phân biệt ActivityService trong Android?

Bình luận

Chưa có bình luận nào