private async Task InvalidateCacheEntryAsync(CoordinationEntryPath path, CancellationToken cancellation)
        {
            var cacheEntry = _cache.GetEntry(path);

            if (!cacheEntry.TryGetEntry(out var entry))
            {
                entry = await _storage.GetEntryAsync(path, cancellation);
            }

            _cache.InvalidateEntry(path);
            await LockManager.ReleaseReadLockAsync(entry, cancellation);
        }
Ejemplo n.º 2
0
 public async Task AcquireLocalReadLockAsync(CoordinationEntryPath path, CancellationToken cancellation)
 {
     var cacheEntry = _cache.GetEntry(path);
     await cacheEntry.LocalReadLock.WaitAsync(cancellation);
 }