gdb 调试网络程序发现connect 失败(interrupted system call)

问题现象

直接执行程序一切正常,但使用gdb启动程序时,即使没有任何断点,发现tcp connect 总是失败,原因是(interrupted system call)。抓包发现主机会发送FIN或者RST断开这条连接。


程序是一个多线程程序,而且connect的线程不是主线程。



问题解决

设置gdb 为non-stop 模式,如此可以完美解决


set target-async 1
set pagination off
set non-stop on

你可能感兴趣的:(gdb 调试网络程序发现connect 失败(interrupted system call))