aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Providers
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2016-01-28 22:40:21 -0500
committerLuke Pulverenti <luke.pulverenti@gmail.com>2016-01-28 22:40:21 -0500
commit3510ef3d2beb810c87f8f3d52f95b95110e574d0 (patch)
treeb5ed7084d32c7f4420b26fad92aaee5e7c7f65c7 /MediaBrowser.Providers
parent8ff5d4af47d9b4fd145206d8609c4894c4ace057 (diff)
reduce use of timers throughout the system
Diffstat (limited to 'MediaBrowser.Providers')
-rw-r--r--MediaBrowser.Providers/People/MovieDbPersonProvider.cs18
1 files changed, 7 insertions, 11 deletions
diff --git a/MediaBrowser.Providers/People/MovieDbPersonProvider.cs b/MediaBrowser.Providers/People/MovieDbPersonProvider.cs
index 5c5919709..14304c2eb 100644
--- a/MediaBrowser.Providers/People/MovieDbPersonProvider.cs
+++ b/MediaBrowser.Providers/People/MovieDbPersonProvider.cs
@@ -38,7 +38,7 @@ namespace MediaBrowser.Providers.People
private int _requestCount;
private readonly object _requestCountLock = new object();
- private Timer _requestCountReset;
+ private DateTime _lastRequestCountReset;
public MovieDbPersonProvider(IFileSystem fileSystem, IServerConfigurationManager configurationManager, IJsonSerializer jsonSerializer, IHttpClient httpClient, ILogger logger)
{
@@ -48,16 +48,6 @@ namespace MediaBrowser.Providers.People
_httpClient = httpClient;
_logger = logger;
Current = this;
-
- _requestCountReset = new Timer(OnRequestThrottleTimerFired, null, TimeSpan.FromHours(1), TimeSpan.FromHours(1));
- }
-
- private void OnRequestThrottleTimerFired(object state)
- {
- lock (_requestCountLock)
- {
- _requestCount = 0;
- }
}
public string Name
@@ -101,6 +91,12 @@ namespace MediaBrowser.Providers.People
{
lock (_requestCountLock)
{
+ if ((DateTime.UtcNow - _lastRequestCountReset).TotalHours >= 1)
+ {
+ _requestCount = 0;
+ _lastRequestCountReset = DateTime.UtcNow;
+ }
+
var requestCount = _requestCount;
if (requestCount >= 5)