Introduction
Bạn đã biết rằng cơ chế chung cho mọi hoạt động RxJava trông giống như sau:
- Tạo 1 Observable<T>
- Đặt các thuộc tính đăng ký chuỗi của Observable (subscribeOn () và ObserOn ())
- Đăng ký Observable bằng Observer
Đó là lý do tồn tại khái niệm đồ dùng một lần. Tất cả observers đều dùng một lần. Đó là, tất cả các Observer thực hiện DisposableObserver interface.
What Problem does Disposables Solve?
Tui nghĩ rằng cách đặt tên đã diễn tả rất tốt ý nghĩa của việc dùng một lần. Đối tượng dùng một lần chính xác là dùng một lần.
Sẽ chẳng ích gì khi nghe một luồng dữ liệu phản ứng nếu nó không còn cần thiết nữa. Đánh dấu thứ gì đó là dùng một lần giúp dễ dàng loại bỏ người quan sát khỏi người có thể quan sát được.
Example
The Observable:
The Observer:
Lưu ý rằng phương thức onSubscribe (Disposable d) hiển thị một đối tượng Disposable. Loại Disposable đó có thể được sử dụng khi chúng ta sử dụng xong observer.
Đây là cách bạn sử dụng nó:
Khởi tạo một đối tượng CompositeDisposable mới. Thông thường, đây sẽ là một biến toàn cục bên trong Activity hoặc ViewModel của bạn.
CompositeDisposable disposables = new CompositeDisposable();
Thêm disposable vào CompositeDisposable.
@Override
public void onSubscribe(Disposable d) {
disposables.add(d);
}
Sau đó, khi Observer không còn cần thiết nữa, hãy xóa các mục dùng một lần. Một nơi tốt để thực hiện việc này là trong phương thức onDestroy() của một Activity hoặc Fragment. Hoặc trong phương thức onCleared() của ViewModel.
disposables.clear();
Test comment ...
ردحذف👌
حذفCó Rx chi kotlin không anh?
ردحذفCó RxKotlin đấy bạn
حذفإرسال تعليق
Cảm ơn bạn đã quan tâm và bày tỏ :D