示例#1
0
        /**
         * 流程就是: Server开始监听--》客户端上线--》server发消息说,Send me your name pls!-->客户端把名字发过来。
         * */
        //Init
        private void ChattingServerFrm_Load(object sender, EventArgs e)
        {
            ChatClientCollection  = new Dictionary <EndPoint, string>();
            serverListener        = new TcpListener(ChatUtil.GetLocalIPEndPoint());
            resetEvent            = new AutoResetEvent(false);
            resetEventForListener = new AutoResetEvent(false);
            ChatClientLists       = new List <ChatClient>();

            heartbeatContainer = new Dictionary <EndPoint, List <int> >();
            heartbeatList      = new List <int>();
            offLineChatClients = new Dictionary <EndPoint, string>();

            heartbeatTimer.Enabled = true;
            syncHeartbeatSend      = new AutoResetEvent(false);

            ChatClientOnLineCounter = new Dictionary <ChatClient, int>();
        }