网络编程
文章平均质量分 66
EFFORT1989
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
unix 网络编程 Fgets Fputs Fclose Fopen Fdopen
voidFclose(FILE *fp){ if (fclose(fp) != 0) err_sys("fclose error");}FILE *Fdopen(int fd, const char *type){ FILE *fp; if ( (fp = fdopen(fd, type)) == NULL) err_s原创 2016-09-28 10:23:50 · 574 阅读 · 0 评论 -
unix 网络编程 readn writen readline
/* include readn */#include "unp.h"ssize_t /* Read "n" bytes from a descriptor. */readn(int fd, void *vptr, size_t n){ size_t nleft; ssize_t nread; char *ptr; ptr = vptr; nleft = n; w转载 2016-09-28 10:35:30 · 444 阅读 · 0 评论 -
SO_KEEPALIVE选项解释
socket心跳机制so_keepalive的三个参数详解 SO_KEEPALIVE 保持连接检测对方主机是否崩溃,避免(服务器)永远阻塞于TCP连接的输入。设置该选项后,如果2小时内在此套接口的任一方向都没有数据交换,TCP就自动给对方 发一个保持存活探测分节(keepalive probe)。这是一个对方必须响应的TCP分节.它会导致以下三种情况:1、对方接收一转载 2016-10-08 08:42:28 · 4249 阅读 · 1 评论 -
SO_LINGER选项解释
SO_LINGER这个选项在我以前带队改造haproxy的时候引出过一个reset(RST)客户端连接的bug。SO_LINGER作用设置函数close()关闭TCP连接时的行为。缺省close()的行为是,如果有数据残留在socket发送缓冲区中则系统将继续发送这些数据给对方,等待被确认,然后返回。利用此选项,可以将此缺省行为设置为以下两种 a.立即关闭该连接,通过发送转载 2016-10-08 09:12:52 · 468 阅读 · 0 评论
分享