c – 如果尝试关闭已经关闭的套接字winsock会发生什么?
参见英文答案 >
Calling shutdown and closesocket twice on same socket????????????????????????????????????3个
如果我两次调用closesocket(m_socket)会发生什么? 第一次调用后,套接字将关闭. 是否在第二次调用之后会发生对程序或应用程序不利的事情.或者它只会返回一个我可以忽略的错误. 解决方法
见
http://msdn.microsoft.com/en-us/library/windows/desktop/ms737582(v=vs.85).aspx
我认为这意味着当任何中间代码可能做了涉及描述符的任何事情时(包括打开文件和其他套接字)而不是必要的全面禁止,你应该小心不要关闭套接字两次,但实际上这是脆弱的你应该编码以避免这种可能性.将INVALID_SOCKET分配给您用来保存套接字描述符的变量可能是有意义的,允许您在再次调用closesocket之前检查它,或者(更糟)确保第二次调用的无副作用失败. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |