读书笔记: SO_LINGER 选项
来源:互联网 发布:取绝对值函数sql 编辑:程序博客网 时间:2024/05/16 01:34
SO_LINGER 选项
关键字:TCP UDP 发送接收缓冲区 CLOSE, SHUTDOWN 函数
close 函数默认处理: FIN 放到发送缓冲区的最后面,立即返回,并且发送完发送缓冲区中的所有数据。
如果想改变close的操作,可以设置SO_LINGER选项
具体参考《UNP》 7.4
总结: 设置SO_LINGER 套接口选项后,close的成功返回只是告诉我们,早先发送的数据和fin 已经被对端的
TCP确认 ,但是不能够告诉我们对端的进程是否已读取数据。 如果不设置这个参数, 我们连对端TCP 是否接收到这个数据都不确定。
当设置了这个选项时,我们在调用close的时候要注意检查它的返回值。
根据所调用的函数(close shutdown)以及是否设置了SO_LINGER 套接口选项,可以在下面三个不同的时机返回:
1: close立即返回,不等待(close 默认处理) 完全不知道对端TCP 是否已经确认收到数据
2: close 等待一会(设置了SO_LINGER ) 知道对端TCP已经确认收到数据 , 不知道进程是否收到
3: 调用shutdown 函数 可以知道对端进程已经收到
- 读书笔记: SO_LINGER 选项
- SO_LINGER选项
- SO_LINGER选项
- setsockopt :SO_LINGER 选项设置
- setsockopt :SO_LINGER 选项设置
- setsockopt 设置 SO_LINGER 选项
- setsockopt :SO_LINGER 选项设置
- setsockopt :SO_LINGER 选项设置
- setsockopt :SO_LINGER 选项设置
- TCP选项之SO_LINGER
- TCP选项之SO_LINGER
- setsockopt :SO_LINGER 选项设置
- setsockopt :SO_LINGER 选项设置
- tsockopt :SO_LINGER 选项设置 .
- setsockopt :SO_LINGER 选项设置
- setsockopt :SO_LINGER 选项设置
- SOCKET:SO_LINGER 选项
- TCP选项之SO_LINGER
- 乐乐抽奖程序破解教程
- 整数数组
- 应用java的实现和设计界面布局DSL
- MySQL存储过程分页兼返回总页数
- Tuxedo域连接配置
- 读书笔记: SO_LINGER 选项
- CPPUnit 使用指南[Unix]
- 从HTTP GET和POST的区别说起
- 制作安全网站的checklist
- Ubuntu 9.10 安装vim 以及Vim介绍比较
- 6-19
- 磁盘IO的总结
- 今天更换主键时遇到的一个问题
- 求助