DoubleLi

qq: 517712484 wx: ldbgliet

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::

2021年3月18日

摘要: sigaction函数解析 sigaction函数的功能是检查或修改与指定信号相关联的处理动作(可同时两种操作)。 他是POSIX的信号接口,而signal()是标准C的信号接口(如果程序必须在非POSIX系统上运行,那么就应该使用这个接口) 给信号signum设置新的信号处理函数act, 同时保留 阅读全文
posted @ 2021-03-18 11:47 DoubleLi 阅读(255) 评论(0) 推荐(0)

摘要: 当服务器close一个连接时,若client端接着发送数据,根据TCP的规定会收到一个RST响应,client再往这个服务器发送数据时,系统会发出一个SIGPIPE信号给进程,告诉进程这个连接已经断开了,不要再写了。 又或者当一个进程向某个已经收到RST的socket执行写操作是,内核向该进程发送一 阅读全文
posted @ 2021-03-18 11:06 DoubleLi 阅读(746) 评论(0) 推荐(0)

摘要: 现象: linux下C++开发的网络服务器程序,在页面刷新时有时候会出现进程退出的情况。使用gdb调试,发现是系统发送了SIGPIPE信号,导致进程退出的。 规避或解决方法: 最根本的解决办法是提高socket编程recv或send函数的健壮性。对返回值做全面的稳妥的处理。 最有效的规避方法是在进程 阅读全文
posted @ 2021-03-18 11:03 DoubleLi 阅读(662) 评论(0) 推荐(0)