From 5732e6188c78e9e0de4a5557bfa9cfa64e05b506 Mon Sep 17 00:00:00 2001 From: Bond_009 Date: Tue, 15 Feb 2022 18:59:46 +0100 Subject: Fix some warnings --- .../Channels/ChannelManager.cs | 29 +++++++++++++++++++++- .../Channels/RefreshChannelsScheduledTask.cs | 2 +- 2 files changed, 29 insertions(+), 2 deletions(-) (limited to 'Emby.Server.Implementations/Channels') diff --git a/Emby.Server.Implementations/Channels/ChannelManager.cs b/Emby.Server.Implementations/Channels/ChannelManager.cs index a107e7a527..09429c73f3 100644 --- a/Emby.Server.Implementations/Channels/ChannelManager.cs +++ b/Emby.Server.Implementations/Channels/ChannelManager.cs @@ -39,7 +39,7 @@ namespace Emby.Server.Implementations.Channels /// /// The LiveTV channel manager. /// - public class ChannelManager : IChannelManager + public class ChannelManager : IChannelManager, IDisposable { private readonly IUserManager _userManager; private readonly IUserDataManager _userDataManager; @@ -52,6 +52,7 @@ namespace Emby.Server.Implementations.Channels private readonly IMemoryCache _memoryCache; private readonly SemaphoreSlim _resourcePool = new SemaphoreSlim(1, 1); private readonly JsonSerializerOptions _jsonOptions = JsonDefaults.Options; + private bool _disposed = false; /// /// Initializes a new instance of the class. @@ -1213,5 +1214,31 @@ namespace Emby.Server.Implementations.Channels return result; } + + /// + public void Dispose() + { + Dispose(true); + GC.SuppressFinalize(this); + } + + /// + /// Releases unmanaged and optionally managed resources. + /// + /// true to release both managed and unmanaged resources; false to release only unmanaged resources. + protected virtual void Dispose(bool disposing) + { + if (_disposed) + { + return; + } + + if (disposing) + { + _resourcePool?.Dispose(); + } + + _disposed = true; + } } } diff --git a/Emby.Server.Implementations/Channels/RefreshChannelsScheduledTask.cs b/Emby.Server.Implementations/Channels/RefreshChannelsScheduledTask.cs index e5dde48d8e..cfd08e6535 100644 --- a/Emby.Server.Implementations/Channels/RefreshChannelsScheduledTask.cs +++ b/Emby.Server.Implementations/Channels/RefreshChannelsScheduledTask.cs @@ -62,7 +62,7 @@ namespace Emby.Server.Implementations.Channels public string Key => "RefreshInternetChannels"; /// - public async Task Execute(CancellationToken cancellationToken, IProgress progress) + public async Task ExecuteAsync(IProgress progress, CancellationToken cancellationToken) { var manager = (ChannelManager)_channelManager; -- cgit v1.2.3