diff options
| author | Gary Wilber <Spacetech326@gmail.com> | 2020-12-02 18:51:53 -0800 |
|---|---|---|
| committer | Gary Wilber <Spacetech326@gmail.com> | 2020-12-02 18:51:53 -0800 |
| commit | f4edca7c2790207b5be9abb3b49029c9fbe04828 (patch) | |
| tree | 3da18152bbe5e1b168f58fb97a0bcdeea4a325b2 /MediaBrowser.Controller/BaseItemManager/BaseItemManager.cs | |
| parent | e8cb9cea7d04da5896cdb2ac1f71b764e8143faa (diff) | |
Move MetadataRefreshThrottler to BaseItemManager
Diffstat (limited to 'MediaBrowser.Controller/BaseItemManager/BaseItemManager.cs')
| -rw-r--r-- | MediaBrowser.Controller/BaseItemManager/BaseItemManager.cs | 17 |
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) |
