dispose method
Implementation
Future<void> dispose() async {
if (_sendPort != null) {
_sendPort!.send(
const IsolateRequest(
id: -1,
command: IsolateCommand.shutdown,
executable: '',
),
);
}
for (final completer in _pending.values) {
if (!completer.isCompleted) {
completer.completeError(
StateError('IsolateRunner disposed while request was pending'),
);
}
}
_pending.clear();
_receivePort?.close();
_isolate?.kill(priority: Isolate.beforeNextEvent);
_isolate = null;
_sendPort = null;
_receivePort = null;
}