[英]Attaching to gdb interupts and won't continue the process
有一些大型实时项目需要处理(多进程(IPC),简而言之就是多一切)。
我的工作流程是作为 Linux 上的服务启动的。 我有root访问权限。
这是问题所在:
我正在尝试附加到正在运行的 proc,尝试通过/使用 gdb 启动它,但结果是一样的:一旦我用 gdb“触摸”它,它就会停止可执行文件,或者有时它会抛出:
Program received signal SIGUSR1, User defined signal 1. [Switching to Thread 0x7f9fe869f700 (LWP 2638)]
当然,从那里什么也做不了。
试过:
伙计们,我想要的只是调试,命中断点等。
请帮忙。 分享意见。
编辑实际命令:
1) gdb 附加 myProcId。 然后在阅读符号后,我点击“c”,结果:
程序收到信号 SIGUSR1,用户定义的信号 1。 [切换到线程 0x7f9fe869f700 (LWP 2638)] 0x00007f9fec09bf73 in select () from /lib64/libc.so.6
2)如果我让第一行在代码中休眠 10 秒,附加到进程,点击“c”,结果:它运行,显示信息线程,主要的回溯,但从不命中断点(确保代码在那里运行- 如果我在那里更改代码,我会得到日志和不同的行为),这意味着进程被卡住了。
3)所有其他组合,如gdb path/to/my/proc参数列表,然后开始。 其中 arg 列表使用不同的相关选项 gdb 给了我们。
也许值得一提:处理网络数据包相关,也驱动定时器。 但对我来说,重要的是当前的中断快照,我不在乎计时器到期后系统会发生什么。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.