Release resources used by the Mutex.
Subsequent calls to lock may fail, or may never call the callback.
@override Future<void> close() async { _shared?.close(); await lock(() async {}); }