//接收數據
        private void ReceiveData(object socketConnecting)
        {
            //獲取客戶端套接字
            Socket socketClient = socketConnecting as Socket;

            while (true)
            {
                byte[] receiveDataVal    = new byte[receiveDataValLength];
                int    receiveDataLength = -1;
                try
                {
                    receiveDataLength = socketClient.Receive(receiveDataVal);
                    //接收到數據
                    if (receiveDataLength > 0)
                    {
                        //處理接收到的數據
                        //ReceivedDataProcess(socketClient,receiveDataVal, receiveDataLength);
                        TcpReceiveEvent rEvent = new TcpReceiveEvent();
                        rEvent.clientSocket = socketClient;
                        rEvent.data         = receiveDataVal;
                        rEvent.length       = receiveDataLength;

                        OnReceiveDataFromClient(this, rEvent);
                    }
                    else
                    {
                        dictSocket.Remove(socketClient.RemoteEndPoint.ToString());
                        dictThread.Remove(socketClient.RemoteEndPoint.ToString());
                        //DeleteClientSocket(socketClient.RemoteEndPoint.ToString());
                        return;
                    }
                }
                catch
                {
                    dictSocket.Remove(socketClient.RemoteEndPoint.ToString());
                    dictThread.Remove(socketClient.RemoteEndPoint.ToString());
                    //DeleteClientSocket(socketClient.RemoteEndPoint.ToString());
                    return;
                }
            }
        }
        /*
         * private void ReceivedDataProcess(Socket clientSocket, byte[] datas, int lenght)
         * {
         *
         *  NewOneThreadSendDataToClient(clientSocket ,datas, lenght);
         *
         * }
         */

        public abstract void ReceivedDataProcess(object sender, TcpReceiveEvent e);