in lib/pool.dart [242:257]
Future close() => _closeMemo.runOnce(() {
if (_closeGroup != null) return _closeGroup!.future;
_resetTimer();
_closeGroup = FutureGroup();
for (var callback in _onReleaseCallbacks) {
_closeGroup!.add(Future.sync(callback));
}
_allocatedResources -= _onReleaseCallbacks.length;
_onReleaseCallbacks.clear();
if (_allocatedResources == 0) _closeGroup!.close();
return _closeGroup!.future;
});