protected override IMessageProcessingPipeBuilder Configure(IMessageProcessingPipeBuilder builder)
{
return builder
//.UseIdleDisconnect(TimeSpan.FromSeconds(60 * 10), this)
//.UseInvalidHandshakeDisconnect<JoinRoomS2S>(TimeSpan.FromSeconds(5))
//.UseFiber(new SimpleFiber(TaskScheduler.Default, 100))
.UseConfigurableDispatcher(config => config
.HandleRequestAsync<JoinRoom, JoinRoomResponse>(OnRoomJoin)
.HandleMessageAsync<Say>(OnSay),
throwIfUnhandled: false);
}