工具/软件:TI-RTOS
回调函数可以根据需要将套接字和任务线程保持尽可能长的时间。 连接完成后、它将从回调返回。 如果需要、该函数可以选择关闭套接字。 返回代码将通知守护进程该套接字是否已关闭(0)或仍处于打开状态(1)。”
如果我返回(1),则当我调用 recv()时接收器任务出错,并且 fdError()指示错误为-9。 从 C:\ti\ndk_2_25_01_11\packages/ti\ndk\inc\serrno.h 中删除:
EBADF 9 /*错误的文件描述符*/
但是、如果我返回(0)、一切看起来都正常。
另请注意,我只使用在 DemonNew()回拨中获得的套接字调用 fdShare()对一对任务。 如果我同时在接收任务和发送任务上调用 fdShare(),我似乎会导致内存泄漏,这是因为我反复连接/断开客户端,最终导致无法连接,并在 ROV 下的 LoggerBuf 中记录了“内存不足”情况。
我的问题是:
如果我在保持套接字打开并用于其他任务时进行缩进,DemonNew()回调将返回什么?
当我的任务完成套接字时,除了 flClose ()套接字之外,我还需要做什么?
从 DemonNew()回调返回正确值时,调用 fdShare()的正确次数是多少?
XDCtools 3.32、SYS/BIOS 6.46、CCS 7.4、PDK 4.0.7、NDK 2.25
此致、
Mike