TCP 同步消息机制
ACE_SOCK_Connector connector;
ACE_Time_Value timeout(3);
ACE_INET_Addr remote(port, ip);
if (connector.connect(server, remote, &timeout) == -1)
{
ACE_DEBUG((LM_ERROR, "[%D] connect to [%s:%d] failed\n", ip, port));
return CMD_ERROR_API_GET_SERVER;
}
ACE_Time_Value timeout(3);
//发送
if (-1 == server.send_n((void*)req->rd_ptr(), req->length(), &timeout))
{
ACE_DEBUG((LM_ERROR, "[%D] send message failed, length=%d\n", req->length()));
server.close();
return CMD_ERROR_API_TRANSPORT;
}
u_short msg_length = 0;
int recv_num = server.recv_n((void*)rsp->wr_ptr(), sizeof(u_short), &timeout);
if (recv_num < 0)
{
ACE_DEBUG((LM_ERROR, "[%D] recv message failed.\n"));
server.close();
return CMD_ERROR_API_TRANSPORT;
}
========================================
增加 宏 ACE_HAS_DUMP 使的ACE 的类 dump 打印调试信息