shutdown method
Implementation
Future<void> shutdown() async {
if (_shutdownCompleter != null) {
return _shutdownCompleter!.future;
}
_shutdownCompleter = Completer();
for (final service in _services.reversed) {
try {
await service.shutdown();
} catch (e, stack) {
_onError('Could not shutdown service gracefully.', e, stack, false);
}
}
_services.clear();
_shutdownCompleter!.complete();
_shutdownCompleter = null;
}