首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

关于套接字缓冲区,该怎么处理

2013-01-21 
关于套接字缓冲区我们知道,对每个套接字,系统都会分配一个发送缓冲区和接收缓冲区,而且这个缓冲区的长度我

关于套接字缓冲区
我们知道,对每个套接字,系统都会分配一个发送缓冲区和接收缓冲区,

而且这个缓冲区的长度我们可以设置。

我的问题是,我如何知道:

1)在不调用 recv 的情况下, 当前接收缓冲区中,有多少数据.

2)当前发送缓冲区中还有多少数据


      谢谢
[解决办法]
1)在不调用 recv 的情况下, 当前接收缓冲区中,有多少数据.

这个应该可以使用MSG_PEEK来获取。例如:
recv(socket_, buf, size, MSG_PEEK);

你可以试一下。
[解决办法]
1, 标准做法是ioctl(fd, FIONREAD, &nbytes);
2, 标准做法是ioctl(fd, FIONWRITE, &nbytes);

热点排行