+ -
当前位置:首页 → 问答吧 → connect()问题

connect()问题

时间:2011-01-07

来源:互联网

在客户端 connect()链接成功了,
但是用send()给服务器发数据时,程序直接终止了,
网上说,如果断开链接了,调用send()发送数据时,会产生SIGPIPE信号,而这个信号默认是终止进程,
我用signal()接收这个信号,果然发现当掉用send()时长生了这个信号,
但是connect()已经链接成功了,但为什么又断开了呢?怎么回事呢?
我是在虚拟机上运行的,一个虚拟机运行服务器程序,一个运行客户端程序。
(客户端和服务端运行在一个机子上时可以正常运行)

作者: YUKUILONGQQ   发布时间: 2011-01-07

C/C++ code
signal(SIGPIPE,SIG_IGN);    //忽略管道错误

作者: hawk198   发布时间: 2011-01-07

引用 1 楼 hawk198 的回复:

C/C++ code
signal(SIGPIPE,SIG_IGN); //忽略管道错误

但是这样做后
send()返回-1了 数据没有发到服务器上呀??

作者: YUKUILONGQQ   发布时间: 2011-01-07