Coroutine Scope
là gì và nó khác với `Co...
Coroutine Scope
là gì và nó khác với `Co...
Trong Kotlin, khi làm việc với coroutines, hai khái niệm quan trọng cần được hiểu rõ là Coroutine Scope
và Coroutine Context
. Mỗi khái niệm này đóng một vai trò riêng biệt trong việc quản lý và thực thi các coroutines.
Coroutine Scope
xác định phạm vi trong đó một coroutine được thực thi. Scope quản lý vòng đời của các coroutines chạy bên trong nó, đảm bảo rằng chúng không tiếp tục thực thi khi scope đã bị hủy. Mỗi coroutine khi được khởi chạy phải được khởi chạy trong một scope cụ thể.
GlobalScope
, lifecycleScope
trong Android, viewModelScope
trong Android ViewModel, v.v.Coroutine Context
là một tập hợp các thuộc tính khác nhau của coroutine, bao gồm dispatcher quyết định thread nào coroutine sẽ chạy trên, cũng như các thông tin khác như Job của coroutine và các elements khác như CoroutineName.
Dispatchers.Main
chạy trên main thread của UI trong Android, Dispatchers.IO
dành cho I/O operations, Dispatchers.Default
cho CPU-intensive tasks.senior
Gợi ý câu hỏi phỏng vấn
Chưa có bình luận nào