public void SendMessage(Socket clientSocket, int id, byte[] messageBytes) { if (IsReadyForSend()) { byte[] idBytes = BitConverter.GetBytes(id); if (messageBytes != null && messageBytes.Length > 0) { byte[] dataBytes = new byte[sizeof(int) + messageBytes.Length]; Array.Copy(idBytes, 0, dataBytes, 0, idBytes.Length); Array.Copy(messageBytes, 0, dataBytes, idBytes.Length, messageBytes.Length); m_serverSocket.SendWith(clientSocket, dataBytes); } else { m_serverSocket.SendWith(clientSocket, idBytes); } } }