Esempio n. 1
0
 void RegistPacketHandler(MainServer serverNetwork, ConnectSessionManager sessionManager)
 {
     if (공용_프로세서)
     {
         var maxUserCount = (MainServer.ServerOption.RoomMaxCountPerThread * MainServer.ServerOption.RoomThreadCount) * MainServer.ServerOption.RoomMaxUserCount;
         CommonPacketHandler.Init(serverNetwork, sessionManager);
         CommonPacketHandler.SetConfig(maxUserCount);
         CommonPacketHandler.RegistPacketHandler(PacketHandlerMap);
     }
     else
     {
         RoomPacketHandler.Init(serverNetwork, sessionManager);
         RoomPacketHandler.Init(RoomList);
         RoomPacketHandler.RegistPacketHandler(PacketHandlerMap);
     }
 }
Esempio n. 2
0
        void RegistPacketHandler(MainServer serverNetwork, ConnectSessionManager sessionManager)
        {
            if (공용_프로세서)
            {
                CommonPacketHandler.Init(serverNetwork, sessionManager);
                CommonPacketHandler.SetConfig(ChatServerEnvironment.MaxUserCount);
                CommonPacketHandler.RegistPacketHandler(PacketHandlerMap);
            }
            else
            {
                RoomPacketHandler.Init(serverNetwork, sessionManager);
                RoomPacketHandler.Init(RoomList);
                RoomPacketHandler.RegistPacketHandler(PacketHandlerMap);
            }

            // 개발
            PacketHandlerMap.Add((int)PACKETID.REQ_TEST_ECHO, CommonPacketHandler.RequestTestEcho);
        }
Esempio n. 3
0
        //TODO MainServer를 인자로 주지말고, func을 인자로 넘겨주는 것이 좋다
        public void CreateAndStart(bool IsCommon, List <Room> roomList, MainServer mainServer, ConnectSessionManager sessionMgr)
        {
            공용_프로세서 = IsCommon;

            if (IsCommon == false)
            {
                RoomList = roomList;

                var minRoomNum = RoomList[0].Number;
                var maxRoomNum = RoomList[0].Number + RoomList.Count() - 1;
                RoomNumberRange = new Tuple <int, int>(minRoomNum, maxRoomNum);
            }

            RegistPacketHandler(mainServer, sessionMgr);

            IsThreadRunning = true;
            ProcessThread   = new System.Threading.Thread(this.Process);
            ProcessThread.Start();
        }
Esempio n. 4
0
 public void Init(MainServer serverNetwork, ConnectSessionManager sessionManager)
 {
     ServerNetwork  = serverNetwork;
     SessionManager = sessionManager;
 }