Closes the client and disposes of all acquired resources.
@override Future<void> dispose() { _disposed = true; return _lock.synchronized(_dispose); }