//public void TimerEVent(object myobject,EventArgs myEventArgs) //{ // Debug.Log("Timer......"); //} public void DisposeMessage() { //Debug.Log("logic receive message!"); lock (m_DelayReceiveDataArray) { if (m_DelayReceiveDataArray.Count > 0) { while (m_DelayReceiveDataArray.Count > 0) { CSendData data = (CSendData)m_DelayReceiveDataArray[0]; m_ReceiveDataArray.Add(data); m_DelayReceiveDataArray.RemoveAt(0); } } } while (m_ReceiveDataArray.Count > 0) { // if (!CHandleMgr.GetSingle().GetLock()) { CSendData data = (CSendData)m_ReceiveDataArray[0]; CHandleMgr.GetSingle().ReceiveByte(data.m_bDataList, data.m_nLength); m_ReceiveDataArray.RemoveAt(0); } } }
//send data from list private void SendDataFromList() { try { while (true) { if (ClientNetMgr.GetSingle().IsConnect()) { if (m_SendDataList.Count <= 0) { Thread.Sleep(30); continue; } //Debug.Log("SendData:Send Count!"+m_SendDataList.Count); System.Net.Sockets.NetworkStream netStream = ClientNetMgr.GetSingle().GetNetworkStream(); lock (netStream) { if (netStream != null && netStream.CanWrite) { lock (m_SendDataList) { CSendData data = (CSendData)m_SendDataList[0]; netStream.Write(data.m_bDataList, 0, data.m_nLength); m_SendDataList.RemoveAt(0); //Debug.Log( "<color=#FFc900>Send packet:</color>"+ data.m_nMessageID); //Debug.Log("Send packet:" + data.m_nMessageID); } } } } else { //CloseSendThread(); break; } } } catch (System.Exception ex) { Debug.Log(ex.Message); } }