我有一个客户端服务器应用程序。客户端向服务器发送命令并在UDP套接字通道上接收数据
每次使用不同的id创建套接字文件时
我使用脚本执行10000次命令,得到EBADF
。
我怀疑的问题是close()
没有立即关闭套接字描述符。
我已经阅读了SO_LINGER选项,但我认为它适用于TCP套接字。
有没有办法确保close()
关闭套接字描述符。
谢谢
答案 0 :(得分:3)
这里的实际问题是您可能没有首先检查创建套接字的结果,或者您正在关闭套接字然后重新使用它,或者破坏了句柄值,所以你以后会遇到EBADF。 EBADF是先前编程错误的结果。不是没有关闭。找出实际错误是什么。不要猜。