aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/BaseItemManager/BaseItemManager.cs
diff options
context:
space:
mode:
authorGary Wilber <Spacetech326@gmail.com>2020-12-02 18:51:53 -0800
committerGary Wilber <Spacetech326@gmail.com>2020-12-02 18:51:53 -0800
commitf4edca7c2790207b5be9abb3b49029c9fbe04828 (patch)
tree3da18152bbe5e1b168f58fb97a0bcdeea4a325b2 /MediaBrowser.Controller/BaseItemManager/BaseItemManager.cs
parente8cb9cea7d04da5896cdb2ac1f71b764e8143faa (diff)
Move MetadataRefreshThrottler to BaseItemManager
Diffstat (limited to 'MediaBrowser.Controller/BaseItemManager/BaseItemManager.cs')
-rw-r--r--MediaBrowser.Controller/BaseItemManager/BaseItemManager.cs17
1 files changed, 16 insertions, 1 deletions
diff --git a/MediaBrowser.Controller/BaseItemManager/BaseItemManager.cs b/MediaBrowser.Controller/BaseItemManager/BaseItemManager.cs
index 67aa7f338..0c8fa8244 100644
--- a/MediaBrowser.Controller/BaseItemManager/BaseItemManager.cs
+++ b/MediaBrowser.Controller/BaseItemManager/BaseItemManager.cs
@@ -1,5 +1,6 @@
-using System;
+using System;
using System.Linq;
+using System.Threading;
using MediaBrowser.Controller.Channels;
using MediaBrowser.Controller.Configuration;
using MediaBrowser.Controller.Entities;
@@ -19,9 +20,23 @@ namespace MediaBrowser.Controller.BaseItemManager
public BaseItemManager(IServerConfigurationManager serverConfigurationManager)
{
_serverConfigurationManager = serverConfigurationManager;
+
+ MetadataRefreshThrottler = new Lazy<SemaphoreSlim>(() => {
+ var concurrency = _serverConfigurationManager.Configuration.LibraryMetadataRefreshConcurrency;
+
+ if (concurrency <= 0)
+ {
+ concurrency = Environment.ProcessorCount;
+ }
+
+ return new SemaphoreSlim(concurrency);
+ });
}
/// <inheritdoc />
+ public Lazy<SemaphoreSlim> MetadataRefreshThrottler { get; private set; }
+
+ /// <inheritdoc />
public bool IsMetadataFetcherEnabled(BaseItem baseItem, LibraryOptions libraryOptions, string name)
{
if (baseItem is Channel)