问题描述:
socket在侦听情况下,接受一个外部的socket,但是还没有处理。之后该socket已经断开,但是程序却继续处理这个socket,此时会导致程序处理一个断开的socket,程序退出。
处理方法:
在程序中添加:
struct sigaction action; //信号处理结构体
action.sa_handler = function; //产生信号时的处理函数
sigemptyset(&action.sa_mask);
action.sa_flags = 0;
sigaction(SIGPIPE,&action,NULL); //信号类型
function是捕捉到的处理函数。
function函数可以不做任何处理,但是该函数需要存在。
这样处理后,程序就不会退出了。
zxddong 于 2012-12-08 17:45:50发表:
瞅瞅~~~~~~~~~
啊啊 于 2012-12-04 23:03:48发表:
我为什么不行啊
goldwing1800 于 2008-06-13 16:43:30发表:
:0w45cd(1