|

楼主 |
发表于 2025-2-8 15:59:25
|
显示全部楼层
status = tx_event_flags_get(&EventGroup, /* 事件标志控制块 */
BIT_ALL, /* 等待标志 */
TX_OR_CLEAR, /* 等待标志中的任何一个bit被置1触发 */
&actual_events,
100);
if(status == TX_SUCCESS)
{
switch (actual_events)
{
case BIT_0:
t1 = _tx_time_get();
iCount = 100 * 1024 * 1024;
nx_tcp_socket_info_get(&TCPSocket,NULL,NULL,NULL,NULL,NULL,NULL,NULL,&socket_state,NULL,NULL,NULL);
if( socket_state == NX_TCP_ESTABLISHED )
{
do
{
if(ret == NX_SUCCESS)
{
nx_tcp_socket_mss_get(&TCPSocket, &maxlen);
iCount -= maxlen;
if(iCount < 0)
{
/* 这么计算没问题的 */
maxlen = iCount + maxlen;
}
/* 申请发送数据包 */
ret = nx_packet_allocate(&pool_0, &TraPacket, NX_TCP_PACKET, NX_WAIT_FOREVER);
if (ret)
{
Error_Handler(__FILE__, __LINE__);
}
/*将要发送的数据附加到TraPacket */
ret = nx_packet_data_append(TraPacket, (VOID *)data_buffer, maxlen, &pool_0, NX_WAIT_FOREVER);
if (ret)
{
Error_Handler(__FILE__, __LINE__);
}
/* 发送数据,注意发送后,此函数会释放数据包 */
ret = nx_tcp_socket_send(&TCPSocket,
TraPacket,
NX_WAIT_FOREVER);
if (ret)
{
nx_packet_release(TraPacket);
Error_Handler(__FILE__, __LINE__);
}
// if(ret == NX_SUCCESS) iCount--;
}
}while(iCount > 0);
}
t2 = _tx_time_get();
这是发送的测试代码
|
|