protected override IMessageProcessingPipeBuilder Configure(IMessageProcessingPipeBuilder builder)
        {
            return builder
                //.UseIdleDisconnect(TimeSpan.FromSeconds(60*10), this)
                //.UseInvalidHandshakeDisconnect<JoinRoomS2S>(TimeSpan.FromSeconds(5))
                //.UseFiber(new ReadWriteLockingFiber())
                .UseFiber(new SimpleFiber(TaskScheduler.Default, 10)) // no more than 10 parallel request from same client
                .UseConfigurableDispatcher(config => config
                    .HandleRequestAsync<JoinRoom, JoinRoomResponse>(OnRoomJoin)
                    .HandleMessage<Say>(OnSay),

                    throwIfUnhandled: false);
        }
コード例 #2
0
        protected override IMessageProcessingPipeBuilder Configure(IMessageProcessingPipeBuilder builder)
        {
            return(builder
                   //.UseIdleDisconnect(TimeSpan.FromSeconds(60*10), this)
                   //.UseInvalidHandshakeDisconnect<JoinRoomS2S>(TimeSpan.FromSeconds(5))
                   //.UseFiber(new ReadWriteLockingFiber())
                   .UseFiber(new SimpleFiber(TaskScheduler.Default, 10)) // no more than 10 parallel request from same client
                   .UseConfigurableDispatcher(config => config
                                              .HandleRequestAsync <JoinRoom, JoinRoomResponse>(OnRoomJoin)
                                              .HandleMessage <Say>(OnSay),

                                              throwIfUnhandled: false));
        }
        protected override IMessageProcessingPipeBuilder Configure(IMessageProcessingPipeBuilder builder)
        {
            return(builder
                   //.UseIdleDisconnect(TimeSpan.FromSeconds(60 * 10), this)
                   //.UseInvalidHandshakeDisconnect<JoinRoomS2S>(TimeSpan.FromSeconds(5))
                   .UseFiber(new SimpleFiber(TaskScheduler.Default, 10))
                   .UseConfigurableDispatcher(config => config
                                              .HandleRequest <UseActor, OperationResult>(OnUseActor)
                                              .HandleRequestAsync <PingGateway, OperationResult>(OnPingGateway)
                                              .HandleRequestAsync <TestStateless, OperationResult>(OnTestStateless)
                                              .HandleRequestAsync <TestStateful, OperationResult>(OnTestStateful),

                                              throwIfUnhandled: false));
        }
        protected override IMessageProcessingPipeBuilder Configure(IMessageProcessingPipeBuilder builder)
        {
            return builder
                //.UseIdleDisconnect(TimeSpan.FromSeconds(60 * 10), this)
                //.UseInvalidHandshakeDisconnect<JoinRoomS2S>(TimeSpan.FromSeconds(5))
                .UseFiber(new SimpleFiber(TaskScheduler.Default, 10))
                .UseConfigurableDispatcher(config => config
                    .HandleRequest<UseActor, OperationResult>(OnUseActor)
                    .HandleRequestAsync<PingGateway, OperationResult>(OnPingGateway)
                    .HandleRequestAsync<TestStateless, OperationResult>(OnTestStateless)
                    .HandleRequestAsync<TestStateful, OperationResult>(OnTestStateful),

                    throwIfUnhandled: false);
        }
コード例 #5
0
 protected virtual IMessageProcessingPipeBuilder ConfigurePipe(IMessageProcessingPipeBuilder builder)
 {
     return builder
         .UseFiber(Fiber, ConfigureLocks)
         .UseConfigurableDispatcher(ConfigureHandlers);
 }
コード例 #6
0
 protected virtual IMessageProcessingPipeBuilder ConfigurePipe(IMessageProcessingPipeBuilder builder)
 {
     return(builder
            .UseFiber(Fiber, ConfigureLocks)
            .UseConfigurableDispatcher(ConfigureHandlers));
 }