failAllAndDispose method
Fails all pending requests, optionally sends a dispose op, and kills the isolate.
Implementation
void failAllAndDispose({String? disposeOp}) {
for (final completer in _pending.values) {
if (!completer.isCompleted) {
completer.completeError(StateError('IsolateRpcClient disposed'));
}
}
_pending.clear();
if (disposeOp != null && sendPort != null) {
try {
sendPort!.send({'id': -1, 'op': disposeOp});
} catch (_) {}
}
isolate?.kill(priority: Isolate.immediate);
receivePort.close();
isolate = null;
sendPort = null;
}