Пример #1
0
        public static void AddSocket(GameClient sck)
        {
            if (sck == null)
            {
                return;
            }
            uint num = 0;

            while (num < 100000U)
            {
                uint key = ++num;
                if (!GameManager._socketList.ContainsKey(key) && GameManager._socketList.TryAdd(key, sck))
                {
                    sck.SessionId = key;
                    sck.Start();
                    return;
                }
            }
            sck.Close(500, false);
        }
        public static void AddSocket(GameClient sck)
        {
            if (sck == null)
            {
                return;
            }

            for (uint i = 1; i < 100000; i++)
            {
                if (!_socketList.ContainsKey(i) && _socketList.TryAdd(i, sck))
                {
                    sck.SessionId = i;
                    sck.Start();
                    return;
                }
            }
            Printf.danger("[GameManager.AddSocket] Nao adicionou uma sessionId, conexao fechada!");
            SaveLog.error("[GameManager.AddSocket] Nao adicionou uma sessionId, conexao fechada! " + sck._client.RemoteEndPoint);
            sck.Close(500);
        }