_tcpl.Start();
            Console.WriteLine("服务器已启动,正在监听...\n");
            Console.WriteLine(string.Format("服务器IP:{0}\t端口号:{1}\n", _ip, _port));
            while (true)
            {
                byte[] packetBuff = new byte[_maxPacket];
                Socket newClient = _tcpl.AcceptSocket();
                newClient.Receive(packetBuff);
                string userName = Encoding.Unicode.GetString(packetBuff).TrimEnd('\0');
                //验证是否为唯一用户
                if (_transmit_tb.Count != 0 && _transmit_tb.ContainsKey(userName))
                {
                    newClient.Send(Encoding.Unicode.GetBytes("cmd::Failed"));
                    continue;
                }
                else
                {
                    newClient.Send(Encoding.Unicode.GetBytes("cmd::Successful"));
                }
                //将新连接加入转发表并创建线程为其服务
                _transmit_tb.Add(userName, newClient);
                string svrlog = string.Format("[系统消息]新用户 {0} 在 {1} 已连接... 当前在线人数: {2}\r\n\r\n", userName, DateTime.Now, _transmit_tb.Count);
                Console.WriteLine(svrlog);
                
                Thread clientThread = new Thread(new ParameterizedThreadStart(ThreadFunc));
                clientThread.Start(userName);
                //向所有客户机发送系统消息
		
- 上一篇:php+mysql校园论坛的设计与开发 
- 下一篇:php增值业务运营系统中业务流量分析的研究与开发 
- 
- 
- 
- 
- 
- 
- 
- 河岸冲刷和泥沙淤积的监测国内外研究现状
- 杂拟谷盗体内共生菌沃尔...
- 大众媒体对公共政策制定的影响
- 乳业同业并购式全产业链...
- 中考体育项目与体育教学合理结合的研究
- 酸性水汽提装置总汽提塔设计+CAD图纸
- java+mysql车辆管理系统的设计+源代码
- 十二层带中心支撑钢结构...
- 当代大学生慈善意识研究+文献综述
- 电站锅炉暖风器设计任务书