码迷,mamicode.com
首页 > 系统相关 > 详细

Linux 网络编程详解九

时间:2016-12-08 11:55:02      阅读:311      评论:0      收藏:0      [点我收藏+]

标签:客户端   pre   lin   服务器   linu   套接字   进程   tcp/ip协议   igp   

TCP/IP协议中SIGPIPE信号产生原因
1.假设客户端socket套接字close(),会给服务器发送字节段FIN;
2.服务器接收到FIN,但是没有调用close(),因为socket有缓存区,所以服务器仍然可以向客户端发送数据。
3.如果这种状态下服务器向客户端发送数据,将会引起TCP/IP协议进行RST段重置,导致服务器向当前进程发送SIGPIPE信号,
  SIGPIPE信号的默认动作是关闭当前进程。

所以在网络编程中必须要捕捉SIGPIPE信号,因为不确定哪个端会突然close()。

 

Linux 网络编程详解九

标签:客户端   pre   lin   服务器   linu   套接字   进程   tcp/ip协议   igp   

原文地址:http://www.cnblogs.com/zhanggaofeng/p/6144244.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!