removeObserver method

void removeObserver(
  1. QueryObserverHandle observer
)

Detaches a reactive observer.

Implementation

void removeObserver(QueryObserverHandle observer) {
  if (!_observers.remove(observer)) return;
  cache.notify(QueryCacheEvent(QueryCacheEventType.observerRemoved, this));
  if (_observers.isEmpty && _cancellation?.consumed == true) {
    cancel(silent: true, revert: true);
  }
  scheduleGc();
}