async ValueTask <bool> HandleServerMessage(SocketServer <object, SimpleMessage> .Connection connection, SimpleMessage message) { int messageId = Interlocked.Increment(ref messagesReceived); if (messageId == 1) { stopwatch.Start(); } if (messageId % 50000 == 0) { // Logger.Info($"Messages received: {messagesReceived}. Messages/s: {messagesReceived / stopwatch.Elapsed.TotalSeconds}"); } // if messages are being handled synchronously in the event message stream this can deadlock! if (message.Disconnect) { await connection.DisconnectAsync().ConfigureAwait(false); } if (DebugReceived) { //Logger.Info($"Received message id {message.Id}"); } if (!message.DontReply) { await connection.WriteAsync(new SimpleMessage { Id = message.Id, Value = messageId }).ConfigureAwait(false); if (DebugReceived) { // Logger.Info($"Replied for message id {message.Id}"); } } return(true); }
async ValueTask <bool> HandleClientMessage(SimpleMessage message) { // Logger.Info($"Client message received: {message}"); return(true); }