1. 首页
  2. 网络技术
  3. 网络基础
  4. 其他的接收操作选项-jpeg标准的中文文档pdf

其他的接收操作选项-jpeg标准的中文文档pdf

上传者: 2024-07-19 15:00:36上传 PDF文件 27.27MB 热度 8次

1 6 . 11.3 其他的接收操作选项进程能够通过设置标志MSG_PEEK来查看是否有数据到达。而数据仍然留在接收队列中,被下一个不设置MSG_PEEK的读调用读出。标志MSG_WAITALL指示读调用只有在读到指定数量的数据后才返回。即使soreceive中有一些数据可以返回给进程,但它仍然要等到收到剩余的数据后才返回。当标志MSG_WAITALL被设置后,soreceive只有在下列情况下可以在没有读完指定长度的数据时返回:

  • 连接的读通道被关闭;

  • 插口的接收缓存小于所读数据的大小;

  • 在进程等待剩余的数据时差错出现;

  • 带外数据到达;

  • 在读缓存被写满之前,一个逻辑记录的结尾出现。

对于想进一步了解接收发送HTTP报文的读者,可以参考这篇接收发送HTTP报文。如果你对接收到的报文处理有兴趣,不妨看看这篇接收到的报文处理。对于模拟TCP报文段发送接收过程,这里有一个不错的TCP报文段发送接收模拟工具。关于socket发送与接收报文的详细说明,可以参考这篇socket发送与接收报文

NFS是Net/3中唯一使用MSG_WAITALL和MSG_DONTWAIT标志的软件。进程可以不通过ioctl或fcntl来选择非阻塞的I/O操作,而是设置MSG_DONTWAIT标志来实现非阻塞的读系统调用。如果对非阻塞模式感兴趣,可以看看这个例子:Protues红外遥控采用定时器2非阻塞模式接收

1 6 . 11.4 接收缓存的组织:报文边界对于支持报文边界的协议,每一个报文存放在一个mbuf链中。接收缓存中的多个报文通过...

下载地址
用户评论