dispose method

void dispose()

Cancel host work and release JS handles. Idempotent.

Implementation

void dispose() {
  if (_disposed) return;
  _disposed = true;
  for (final timer in _timers.values) {
    timer.cancel();
  }
  _timers.clear();
  _fireTimer = null;
  _fetch?.dispose();
  _fetch = null;
  for (final ref in _refs) {
    try {
      ref.free();
    } catch (_) {}
  }
  _refs.clear();
}