TMS320C6678: TCP Client 代码-收任务和发任务在大数据流下冲突

Part Number: TMS320C6678

如题,我正在使用NDK 2.21.2.43和SYS/BIOS 6.34.4.22 来在C6678平台上构建一个TCP Client收发数据例程。收任务要求收到服务器端每20ms发来的395KB,发数据要求发送20B的数据给服务器端。收任务和发任务代码定义如附件所示,其中收任务定义优先级为8,发任务定义优先级为7。

tcp_client.cpp

问题在于接收任务和发送任务出现了冲突。在高频数据流,即服务器端每20ms发来395KB数据,共发50包数据的情况下,如果不注释附件.cpp文件中140行的stcp_send_init(&stcp)函数,则收任务最多只能收到第8包数据。使用wireshark抓包信息如下:

如果注释掉附件.cpp文件中140行的stcp_send_init(&stcp)函数,则收任务可以全部接收完所有包。

值得注意的是,如果服务器端每1s发来395KB数据,共发50包数据的情况下,现象仍同上述一模一样。

请问该如何解决上述问题,使得客户端收发任务均能完成。