dispose method

  1. @override
  2. @mustCallSuper
void dispose()
override

Called when this client is disposed. Will dispose all studies running in this client.

Implementation

@override
@mustCallSuper
void dispose() {
  debug('$runtimeType - Disposing client manager...');

  // First pause all data sampling
  pause();

  // Then dispose all study controllers.
  for (var controller in _controllers.values) {
    controller.dispose();
  }
  _controllers.clear();

  // Finally dispose the client manager itself.
  ExecutorFactory().dispose();
  _group.close();
  PersistenceService().close();
  _state = ClientManagerState.disposed;
  super.dispose();
}