套接字上的发送数量是否有最大值?我的发送工作最多大约 480 次发送,之后它开始返回 -1
我正在使用 visual studio 2008 vc++ 和使用 ACE 的套接字编程。
最佳答案
没有,您可以调用的 send() 数量没有上限。
查看 the man page for send (或任何适合您平台的页面)并尝试使用 perror()(示例:'perror("error sending.system said");')调用以查看正在生成哪个错误。
请注意,在这种情况下,-1 是一个通用的返回码,可能意味着从“我的套接字已关闭”到“您给我的参数不是有效的文件描述符”;因此,如果没有更多信息,很难判断发生了什么。
编辑:以上答案假定为 *NIX;这是一个糟糕的假设。
由于您使用的是 ACE,请查看 ACE::send() 文档(doxygen 是 here )。此外,应该有一个 ACE_OS::perror("error sending.system said") 调用(doxygen 是 here ),其工作方式应该与我上面描述的类似。
HTH
关于c++ - 套接字最大发送数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3656124/