在断开客户端之前,服务器想向客户端发送一些信息 - 为什么我(服务器)断开你(客户端)。
如果我将数据包发送到 info 并立即关闭客户端套接字,则 closesocket() 返回 -1,如果我使用 linger 选项成功地工作 closesocket(),则无法完全发送信息。
我怎样才能完成这个,是否有可能知道套接字缓冲区是空的(意味着我的数据包已全部发送)?
谢谢。
在断开客户端之前,服务器想向客户端发送一些信息 - 为什么我(服务器)断开你(客户端)。
如果我将数据包发送到 info 并立即关闭客户端套接字,则 closesocket() 返回 -1,如果我使用 linger 选项成功地工作 closesocket(),则无法完全发送信息。
我怎样才能完成这个,是否有可能知道套接字缓冲区是空的(意味着我的数据包已全部发送)?
谢谢。
尝试首先在套接字上调用 shutdown()。
http://msdn.microsoft.com/en-us/library/ms740481%28VS.85%29.aspx
http://www.opengroup.org/onlinepubs/000095399/functions/shutdown.html