public virtual async Task ClearAsync(CancellationToken cancellationToken) { var keysSet = await KeysSetMap.GetValueOrDefaultAsync(Name).ConfigureAwait(false); if (keysSet != null) { var keysEnumerable = keysSet.AsEnumerableAsync(); await keysEnumerable.ForEachAwaitAsync(async k => { IScopedMap scopedMap; if (ScopedMapDictionary.TryGetValue(k.Identifier, out scopedMap)) { await scopedMap.RemoveKeyAsync(k.Key).ConfigureAwait(false); } }, cancellationToken); } await KeysSetMap.TryRemoveAsync(Name).ConfigureAwait(false); }
public Task <bool> TryRemoveAsync(TKey key, CancellationToken cancellationToken = default) => _underlyingSetMap.TryRemoveAsync(key, cancellationToken);