[注意: 本页不介绍供专家用户使用的回调或零拷贝接口
本页不做相关描述。]
FreeRTOS_recv()
用于从 TCP 套接字接收数据。
FreeRTOS_recv()
在创建、配置、绑定 TCP
套接字并将其连接到远程套接字后才能调用。
下述源代码演示了如何通过 FreeRTOS_recv()
将接收数据放入缓冲区。 在本示例中,
假设套接字已创建并连接。
#define BUFFER_SIZE 512
static void prvEchoClientRxTask( void *pvParameters )
{
Socket_t xSocket;
static char cRxedData[ BUFFER_SIZE ];
BaseType_t lBytesReceived;
xSocket = ( Socket_t ) pvParameters;
for( ;; )
{
lBytesReceived = FreeRTOS_recv( xSocket, &cRxedData, BUFFER_SIZE, 0 );
if( lBytesReceived > 0 )
{
prvProcessData( cRxedData, lBytesReceived );
}
else if( lBytesReceived == 0 )
{
}
else
{
FreeRTOS_shutdown( xSocket, FREERTOS_SHUT_RDWR );
break;
}
}
while( FreeRTOS_recv( xSocket, pcBufferToTransmit, xTotalLengthToSend, 0 ) >= 0 )
{
vTaskDelay( pdTICKS_TO_MS( 250 ) );
}
FreeRTOS_closesocket( xSocket );
xTaskDelete( NULL );
}
Example using FreeRTOS_recv()
<<
返回 RTOS TCP 网络教程索引
Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.