stop method

  1. @override
Future<void> stop()
override

Stop the worker

Implementation

@override
Future<void> stop() async {
  if (!_isRunning) return;

  _isRunning = false;
  await _responseSubscription?.cancel();
  _responseSubscription = null;
  _responsePort.close();

  // Complete any pending jobs with error
  for (final completer in _pendingJobs.values) {
    if (!completer.isCompleted) {
      completer.completeError(StateError('Worker stopped'));
    }
  }
  _pendingJobs.clear();
}