1. 下级域上级域说明
1.上级域:采用的是第三方的试用软件,livegbs。
2.下级域:运行于rv1126上的国标客户端测试程序。
2.推流崩溃的问题
2.1问题现象及原因分析
上级域服务端异常掉线等时候出现,原因是建立的socket通道,当服务端掉线的时候,通道出现异常,这个时候调用socket的send方法,就会发出SIGPIPE信号,这个信号会让程序直接退出。
2.2 解决方法
网上有如下几种解决方法:
(1)client中忽略SIGPIPE信号
signal(SIGPIPE, SIG_IGN);
(2)阻止SIGPIPE信号,send失败会返回 -1,可以通过判断改值来检查是否发送失败
sigset_t set;
sigemptyset(&set);
sigaddset(&set, SIGPIPE);
sigprocmask(SIG_BLOCK, &set, NULL);
放到出现问题的线程初始化的地方就行。
ÿ