Lower the amount of running tasks

This commit is contained in:
Bond_009
2019-02-24 03:16:19 +01:00
committed by Bond-009
parent 5024c52c60
commit 2696ac5eac
10 changed files with 53 additions and 81 deletions

View File

@@ -11,7 +11,6 @@ using System.Threading;
using System.Threading.Tasks;
using Emby.Server.Implementations.Net;
using Emby.Server.Implementations.Services;
using Emby.Server.Implementations.SocketSharp;
using MediaBrowser.Common.Extensions;
using MediaBrowser.Common.Net;
using MediaBrowser.Controller;
@@ -823,19 +822,15 @@ namespace Emby.Server.Implementations.HttpServer
Logger.LogDebug("Websocket message received: {0}", result.MessageType);
var tasks = _webSocketListeners.Select(i => Task.Run(async () =>
IEnumerable<Task> GetTasks()
{
try
foreach (var x in _webSocketListeners)
{
await i.ProcessMessage(result).ConfigureAwait(false);
yield return x.ProcessMessageAsync(result);
}
catch (Exception ex)
{
Logger.LogError(ex, "{0} failed processing WebSocket message {1}", i.GetType().Name, result.MessageType ?? string.Empty);
}
}));
}
return Task.WhenAll(tasks);
return Task.WhenAll(GetTasks());
}
public void Dispose()