使用UDP发送消息,收到的消息是乱序的
wireshark抓包发现有些时间是一致的
不知道为什么 以前抓包从来没有到过一致的情况
初步怀疑是因为这个问题 谁知道原因
VOID t_TestTool_Send(VOID)
{
TESTTOOL_STRUCT l_sendMsg = {0U};
struct sockaddr_in l_TestTool_SendAddr = {0};
static SendMsgCount = 0;
l_TestTool_SendAddr.sin_family = (UINT8)AF_INET;
l_TestTool_SendAddr.sin_port=htons(TestTool_Remote_PC_Port);
l_TestTool_SendAddr.sin_addr.s_addr=inet_addr(TestTool_Remote_PC_IP);
while(TRUE) /* parasoft-suppress CODSTA-82 "Task loop." */
{
/* waiting for the send semaphore */
g_Cmn_SemBTake(semB_TestTool_msgSend, WAIT_FOREVER);
while(VC_ERROR != g_TestTool_QueueOut((PUINT8)&l_sendMsg))
{
if(SOCK_ERROR == sendto(g_TestTool_SendSkt, (char*)&l_sendMsg, MSG_HEADSIZE_TESTTOOL + l_sendMsg.m_dataLen, 0, (struct sockaddr*)&l_TestTool_SendAddr, sizeof(struct sockaddr_in)))
{
printf("---asdfghjk------\n");
}
else
{
SendMsgCount++;
}
}
}
}