send 函数导致进程退出

           本人之前没有做过网络方面的项目,对网络编程一知半解,最近写一个简单的网页遥控器程序,就是用网页绘制一个遥控器,然后点击遥控上的按钮,电视就会执行和真实遥控器相同的行为。于是写了一个简单的webserver,用C写的,写完后反复测试,发现服务器进程会莫名其妙的退出,很是诧异,通过加打印反复测试,发现问题出现在send函数上,这个函数怎么能出问题呢?当然不可能是这个函数出问题了,这个函数可是千锤百炼出来的,怎么会到我这里就有问题呢,通过查阅资料发现问题如下:

在linux下写socket的程序的时候,如果尝试send到一个disconnected socket上,就会让底层抛出一个SIGPIPE信号。这个信号的缺省处理方法是退出进程。因此我的处理方法很简单,重新定义这个信号的处理方式,使用:

void signal_func(){ 
}

signal(SIGPIPE,signal_func);

这样程序就不会退出了。至于你想怎么处理,哪得看你了。

       如果对"网页遥控器感兴趣",可以到这里下载:

http://download.csdn.net/detail/u011913612/9374213

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值