只有在使用GDB逐步调试时才会遇到“Broken pipe”错误

时间:2011-06-01 18:49:39

标签: xcode sockets gdb boost-asio broken-pipe

在PHP上编写了unix-socket服务器(但我不认为它有什么用它)。客户端是用c ++编写的,基于boost :: asio库。当我正常启动程序时 - 一切正常,除了一个(与套接字通信无关)的错误,我显然想要调试。但是,当我开始逐步调试时,我立即收到'Broken Pipe'错误,这些错误对在套接字上执行写操作的步骤。如果在套接字写操作之后设置了断点 - 一切正常,直到下一次尝试跳过write func。

整天都试图解决这个问题,但没有成功......

有没有人遇到同样的麻烦?

  • 在OS X 10.6.7
  • 下使用与xCode 3.2.5(64位)捆绑在一起的GDB

1 个答案:

答案 0 :(得分:0)

GDB积极使用信号。如果要安装信号处理程序,请查看以下示例:

https://github.com/sean-/Boost.Examples/blob/master/asio/timer/timer.cc#L106