摘要: 什么时候会TIME_WAIT TCP在关闭的时候有个四次挥手的过程,主动关闭方在四次挥手的最后一个ACK发送之后会变成TIME_WAIT状态。 主动关闭方 跟握手不同,挥手可以由客户端发起,也可以是服务端发起。发起关闭的一端我们称之为主动关闭方,另一端称之为被动关闭方。 四次挥手 主动关闭方会发送一 阅读全文
posted @ 2020-09-28 10:59 tiny~~ 阅读(294) 评论(0) 推荐(0) 编辑
摘要: 转载:https://blog.csdn.net/baidu_33850454/article/details/79363033 1. 前言 使用#把宏参数变为一个字符串,用##把两个宏参数贴合在一起. 2. 一般用法 #include<cstdio>#include<climits>using n 阅读全文
posted @ 2019-01-07 15:46 tiny~~ 阅读(9976) 评论(0) 推荐(1) 编辑
摘要: https://www.ibm.com/developerworks/cn/linux/l-linux-kernel/ https://www.ibm.com/developerworks/cn/linux/l-linux-kernel/ https://www.ibm.com/developerw 阅读全文
posted @ 2018-10-18 09:11 tiny~~ 阅读(438) 评论(0) 推荐(0) 编辑
摘要: Select在Socket编程中还是比较重要的,可是对于初学Socket的人来说都不太爱用Select写程序,他们只 是习惯写诸如 connect、accept、recv或recvfrom这样的阻塞程序(所谓阻塞方式block,顾名思义,就 是进程或是线程执行到这些函数时必须等待某个事件的发生,如果 阅读全文
posted @ 2018-10-10 14:46 tiny~~ 阅读(20938) 评论(0) 推荐(2) 编辑
摘要: 功能描述: 获取或者设置与某个套接字关联的选 项。选项可能存在于多层协议中,它们总会出现在最上面的套接字层。当操作套接字选项时,选项位于的层和选项的名称必须给出。为了操作套接字层的选项,应该 将层的值指定为SOL_SOCKET。为了操作其它层的选项,控制选项的合适协议号必须给出。例如,为了表示一个选 阅读全文
posted @ 2018-10-10 14:24 tiny~~ 阅读(8175) 评论(0) 推荐(0) 编辑
摘要: 在linux编程中,strerror()是一个号东西,因为一个孤零零的errno看不出个所以然,然而strerror()返回的错误描述已经给我们解决问题提供了80%的成功率。但从安全性的角度来讲,strerror_r是更好的选择,因为:#include <string.h>char *strerro 阅读全文
posted @ 2018-10-08 15:54 tiny~~ 阅读(2860) 评论(0) 推荐(0) 编辑
摘要: #include #include #include typedef struct DoubleLinkNode { int data; struct DoubleLinkNode *prev; struct DoubleLinkNode *next; }Node; /* 创建一个带头节点的双向链表 */ Node* Create_Double_link() {... 阅读全文
posted @ 2018-07-12 09:25 tiny~~ 阅读(380) 评论(0) 推荐(0) 编辑
摘要: 1. wait()和waitpid()函数说明 wait() 进程一旦调用了wait(), 就立即阻塞自己,由wait自动分析是否有当前进程的某个子进程已经退出,如果让它找到了一个已经变成僵尸的子进程,wait就会收集这个子进程的信息,并把它彻底销毁后返回;如果没有找到这样一个子进程,wait就会一 阅读全文
posted @ 2018-05-29 16:31 tiny~~ 阅读(1121) 评论(0) 推荐(0) 编辑
摘要: 在linux的标准库函数中,有一套称作高级I/O的函数,我们熟知的printf 、fopen 、fread 、fwrite都在此列,他们也被称作缓冲I/O。其特征是对应每一个打开的文件,都存在一个缓冲区, 在内存中都有一片缓冲区,每次读文件会多读若干条记录,这样下次读文件时就可以直接从内存的缓存中取 阅读全文
posted @ 2018-05-25 14:09 tiny~~ 阅读(1634) 评论(1) 推荐(0) 编辑
摘要: 相关函数:open, opendir, closedir, rewinddir, seekdir, telldir, scandir头文件:#include <sys/types.h> #include <dirent.h>定义函数:struct dirent * readdir(DIR * dir 阅读全文
posted @ 2018-05-24 16:16 tiny~~ 阅读(26374) 评论(1) 推荐(4) 编辑