aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--MediaBrowser.Providers/TV/TheTVDB/TvDbClientManager.cs11
1 files changed, 9 insertions, 2 deletions
diff --git a/MediaBrowser.Providers/TV/TheTVDB/TvDbClientManager.cs b/MediaBrowser.Providers/TV/TheTVDB/TvDbClientManager.cs
index ca50d4c2b..276622666 100644
--- a/MediaBrowser.Providers/TV/TheTVDB/TvDbClientManager.cs
+++ b/MediaBrowser.Providers/TV/TheTVDB/TvDbClientManager.cs
@@ -90,16 +90,23 @@ namespace MediaBrowser.Providers.TV
{
return cachedValue;
}
- using (_cacheWriteLock)
+
+ await _cacheWriteLock.WaitAsync().ConfigureAwait(false);
+ try
{
if (_cache.TryGetValue(key, out cachedValue))
{
return cachedValue;
}
+
var result = await resultFactory.Invoke();
- _cache.Set(key, result, DateTimeOffset.UtcNow.AddHours(1));
+ _cache.Set(key, result, TimeSpan.FromHours(1));
return result;
}
+ finally
+ {
+ _cacheWriteLock.Release();
+ }
}
}
}