示例#1
0
        private string doRegisterClient(Payload payload, NetworkStream networkStream)
        {
            string  ClientId = "Client" + ClientNo;
            Payload outputClientIdPayLoad = new Payload();

            outputClientIdPayLoad.command  = CommandType.CLIENT_REGISTRTION;
            outputClientIdPayLoad.clientId = ClientId;
            RegisterClientEventArgs args = new RegisterClientEventArgs();

            args.ClientId = ClientId;
            var e = registerClientEvent;

            if (e != null)
            {
                e.Invoke(args);
            }

            commUtil.sendPacket(networkStream, outputClientIdPayLoad);
            if (!taskPayLoad.ContainsKey(outputClientIdPayLoad.clientId))
            {
                taskPayLoad.Add(outputClientIdPayLoad.clientId, new Queue <Payload>());
                Thread newClientThreadStart = new Thread(() => sendPacketsToClient(ClientId, networkStream));
                newClientThreadStart.Start();
                ClientNo++;
            }

            return(ClientId);
        }
示例#2
0
        private void setClientID(Payload payload)
        {
            clientId = payload.clientId;
            RegisterClientEventArgs args = new RegisterClientEventArgs();

            args.ClientId = clientId;
            registerClientEvent(args);
        }