close method
Closes this database, shutting down all worker isolates and releasing native resources.
After close() resolves, any further operations on this Database
throw a ResqliteConnectionException.
Implementation
Future<void> close() async {
if (_closedCompleter case Completer<void> completer) {
return completer.future;
}
final completer = _closedCompleter = Completer();
try {
final (writer, readerPool) = await (_writer, _readerPool).wait;
_streamEngine.close();
await readerPool.close();
await writer.close();
resqliteClose(_handle);
completer.complete();
} catch (e) {
completer.completeError(e);
rethrow;
}
}