发布
社区首页 >问答首页 >C++代码挂起,即使在GDB中也是如此

C++代码挂起,即使在GDB中也是如此
EN

Stack Overflow用户
提问于 2013-12-26 18:56:08
回答 1查看 213关注 0票数 0

在linux中,大约有5k行的C++代码会随机挂起。我的代码处理通过原始套接字发送和接收数据包。代码只是随机地停在一个点上,没有任何响应-即使是ctrl+c也没有证明是方便的::每次挂起后,我都会用它来杀死进程。我尝试了GDB,结果是相同的,它挂起了- ctrl+c产生了一个SIGTERM错误信息。在使用valgrind时,代码类似地挂起。

如何调试这个问题?是否存在任何类型的系统错误?

EN

回答 1

Stack Overflow用户

发布于 2014-01-16 14:06:37

使用strace命令,很明显挂起是由于futex_wait_private问题造成的。套接字读取被推入死锁情况。在增加select超时值时-该问题可以解决。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20783607

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档