From f41bcb9b2d0988ba046144b286a0cab27568a650 Mon Sep 17 00:00:00 2001 From: David Fowler Date: Wed, 2 Nov 2016 02:46:52 -0700 Subject: [PATCH] Subscribe in parallel --- .../RedisHubLifetimeManager.cs | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/Microsoft.AspNetCore.SignalR.Redis/RedisHubLifetimeManager.cs b/src/Microsoft.AspNetCore.SignalR.Redis/RedisHubLifetimeManager.cs index da7733de7f..ae03a41537 100644 --- a/src/Microsoft.AspNetCore.SignalR.Redis/RedisHubLifetimeManager.cs +++ b/src/Microsoft.AspNetCore.SignalR.Redis/RedisHubLifetimeManager.cs @@ -89,11 +89,13 @@ namespace Microsoft.AspNetCore.SignalR.Redis } } - public override async Task OnConnectedAsync(Connection connection) + public override Task OnConnectedAsync(Connection connection) { - await SubscribeAsync(typeof(THub).Name, connection); - await SubscribeAsync(typeof(THub).Name + "." + connection.ConnectionId, connection); - await SubscribeAsync(typeof(THub).Name + "." + connection.User.Identity.Name, connection); + var task1 = SubscribeAsync(typeof(THub).Name, connection); + var task2 = SubscribeAsync(typeof(THub).Name + "." + connection.ConnectionId, connection); + var task3 = SubscribeAsync(typeof(THub).Name + "." + connection.User.Identity.Name, connection); + + return Task.WhenAll(task2, task2, task3); } public override Task OnDisconnectedAsync(Connection connection)