2016-03-11 48 views
0

在我的C++客户端中,我使用boost apis来执行发送和接收数据到服务器。 但是偶尔当我从套接字增强报告系统错误2中读取对应于“ENOENT”(没有这样的文件或目录)时。ENOENT接收网络套接字上的recv系统调用

任何人都可以告诉recv/recvmsg系统调用中哪些条件可以返回ENOENT吗?

+1

您应该无法从网络套接字获取'ENOENT'。你能否请尝试创建一个[最小,完整和可验证示例](http://stackoverflow.com/help/mcve),导致错误并向我们展示? –

+0

boost :: asio错误代码列表中没有ENOENT代码http://www.boost.org/doc/libs/1_60_0/boost/asio/error.hpp需要示例代码。 – PSIAlt

回答

1

错误代码有误解。升压时系统错误代码2对应于发送实体在接收实体仍在执行时关闭套接字时发生的EOF读取