当前位置: 技术问答>linux和unix
socket发送数据问题(50分)
来源: 互联网 发布时间:2015-03-24
本文导语: 我如何知道发送缓冲区的数据已经被发送出去? 或者发送缓冲区中还有多少字节尚未被发送出去? | 好象没。 不过你用 netstat 来看,可以看到队列中还有多少数据未被发送出去。 通常的做...
我如何知道发送缓冲区的数据已经被发送出去?
或者发送缓冲区中还有多少字节尚未被发送出去?
或者发送缓冲区中还有多少字节尚未被发送出去?
|
好象没。
不过你用 netstat 来看,可以看到队列中还有多少数据未被发送出去。
通常的做法是,由对方发送响应信息来判断是否发送成功。
如果你是想在发送完毕后才关闭Socket的话,你可以用setsocketopt()当中有一个参数是用于在关闭前等待数据发送完毕,具体参数是SO_LINGER,当中还有一个参数是一个结构,用于定义你所需要的等待超时时间。
不过你用 netstat 来看,可以看到队列中还有多少数据未被发送出去。
通常的做法是,由对方发送响应信息来判断是否发送成功。
如果你是想在发送完毕后才关闭Socket的话,你可以用setsocketopt()当中有一个参数是用于在关闭前等待数据发送完毕,具体参数是SO_LINGER,当中还有一个参数是一个结构,用于定义你所需要的等待超时时间。