SO_LINGER选项用于控制close系统调用在关闭TCP连接时的行为。在默认情况下,当说我们使用close系统调用关闭一个socket时,close立即返回,TCP模块负责把socket对应的TCP发送缓冲区中残留的数据发送给对方。
根据linger结构体中两个变量的不同值,会有三种不同的结果:
1、l_onoff==0 ,此时SO_LINGER选项不起作用,close用默认行为来关闭so...
                            
                            
                                分类:
其他好文   时间:
2014-10-26 21:15:36   
                                阅读次数:
146
                             
                    
                        
                            
                            
                                当调用closesocket关闭套接字时,SO_LINGER将决定系统如何处理残存在套接字发送队列中的数据。处理方式无非两种:丢弃或者将数据继续发送至对端,优雅关闭连接TCP_NODELAY: 表示立即发送数据.SO_RESUSEADDR: 表示是否允许重用Socket 所绑定的本地地址.SO_TI...
                            
                            
                                分类:
其他好文   时间:
2014-10-21 00:37:50   
                                阅读次数:
286
                             
                    
                        
                            
                            
                                接着上一篇网络编程Socket之TCP之close/shutdown详解...
                            
                            
                                分类:
其他好文   时间:
2014-07-23 13:11:26   
                                阅读次数:
202
                             
                    
                        
                            
                            
                                close:
当套接字的引用计数为0的时候才会引发TCP的四分组连接终止序列;
 
shutdown:
不用管套接字的引用计数就激发TCP的正常连接终止序列;
这里由一个SO_LINGER套接字选项
struct linger {
     int l_onoff; /* 0 = off, nozero = on */
     int l_linger; ...
                            
                            
                                分类:
其他好文   时间:
2014-07-20 22:24:53   
                                阅读次数:
367
                             
                    
                        
                            
                            
                                ### 背景
银时跟我讲,想从 Netty3迁移到Netty4 。
问其原因是因为 Netty3在容器里会报错,错误堆栈:
java.io.IOException: 无法立即完成一个非阻止性套接字操作。
at sun.nio.ch.SocketDispatcher.close0(Native Method)
at sun.nio.ch.SocketDisp...
                            
                            
                                分类:
其他好文   时间:
2014-05-07 06:30:21   
                                阅读次数:
425