public SendMessage ( int nMessageID, Byte data ) : bool | ||
nMessageID | int | |
data | Byte | |
return | bool |
public bool SendMessage(int nMessageID, Byte[] data)
{
if (null == data)
{
return false;
}
int bodysize = data.Length;
///组包
SocketNetPacket sendPack = new SocketNetPacket((Int16)nMessageID, bodysize);
sendPack.SetPackBody(data);
lock (m_SendObject)
{
m_SendPackList.AddLast(sendPack);
if (1 == m_SendPackList.Count)
{
m_ManualSendEvent.Set();
}
Debug.Log("CNetTCPSocketConnect::SendMessage m_SendPackList.Count = " + m_SendPackList.Count);
}
return true;
}
//------------------------------------------------------------------------- public bool SendMessage(int nMessageID, Byte[] data, int id = -1) { if (null == data) { return(false); } // 如果还没刷新 就手动刷新一次 //if (SNetCommon.NUNE_VALUE == m_currentConnectedSID) //{ // Update(); //} int tempID = id; if (id == SNetCommon.NUNE_VALUE) { tempID = m_currentConnectedSID; } // 防止 系统尚未update connect 但是就sendMessage了 if (id == SNetCommon.NUNE_VALUE) { tempID = m_ReadyToConnectSID; } CNetTCPSocketConnect c = null; if (m_TCPConnects.TryGetValue(tempID, out c)) { if (null != c || c.IsConnect()) { c.SendMessage(nMessageID, data); return(true); } } Debug.Log("CNetWork::SendMessage false id = " + id); return(false); }