发布时间:2016-01-12 09:43:36
MSG_PEEK标志可以用来读取套接字接收队列中可读的数据,一些情况会用到它,比如为了避免不阻塞而先检查套接字接收队列中可读的数据长度,再采取相应操作。当然,不阻塞也可采取其他的方法,例如非阻塞式I/O。MSG_PEEK标志会将套接字接收队列中的可读的数据拷贝到缓冲区,但不会使套接子接收队列中的数据减少,常见的是:.........【阅读全文】
发布时间:2015-06-19 11:15:59
转自(http://blog.sina.com.cn/s/blog_976bcdc201018su5.html)这两个函数是最通用的I/O函数。实际上我们可以把所有read、readv、recv和recvfrom调用替换成recvmsg调用。类似地,各种输出函数调用也可以替换成sendmsg调用。 #include ssize_t recvmsg(int sockfd,s.........【阅读全文】
发布时间:2015-05-14 21:39:14
转自网络:http://blog.const.net.cn/a/17107.htm假如应用程式不使用 tcp 的 keepalive,在网线断开之后,以前建立的 socket 链接仍然会保持在ESTABLISH 状态不会改变。实际上 tcp 协议对这部分是有所处理的,需要服务端程式,在配置 socket 属性时,使用 keepalive option, 一旦有此配置,这些长时间无数据的链接会根据.........【阅读全文】