Use the locking properly, this is not Python...

This commit is contained in:
Claus Vium 2019-02-07 21:05:58 +01:00
parent 86940e96d5
commit d6835f8dd6

View file

@ -90,16 +90,23 @@ namespace MediaBrowser.Providers.TV
{ {
return cachedValue; return cachedValue;
} }
using (_cacheWriteLock)
await _cacheWriteLock.WaitAsync().ConfigureAwait(false);
try
{ {
if (_cache.TryGetValue(key, out cachedValue)) if (_cache.TryGetValue(key, out cachedValue))
{ {
return cachedValue; return cachedValue;
} }
var result = await resultFactory.Invoke(); var result = await resultFactory.Invoke();
_cache.Set(key, result, DateTimeOffset.UtcNow.AddHours(1)); _cache.Set(key, result, TimeSpan.FromHours(1));
return result; return result;
} }
finally
{
_cacheWriteLock.Release();
}
} }
} }
} }