如何在没有断点的情况下停止gdb执行?GDB如何在没有断点的情况下停止执行?
回答
只需使用常规中断Ctrl - c将工作得很好。 GDB只是将SIGINT
转发到调试过程,然后死亡。 GDB会捕获非标准的出口并在那里破坏进程,所以你仍然可以检查所有线程,它们的堆栈和变量的当前值。这工作正常,但你会更好使用断点。唯一一次我发现自己这样做,如果我觉得我已经陷入某种无限循环。
我试过^ C但它没有工作我无法在提示符上键入任何内容。此外,该程序是多线程的用户界面,这可能是问题吗? – anand 2009-01-07 19:25:16
Ctrl-C作为我想要的炒作,但我不会在GDB 7.7.1上重现这一点:该过程似乎没有得到Ctrl-C并死亡。它只被GDB阻止,没有被杀害。再次点击`c`或`detach`使它从停止的地方继续。 – 2015-05-08 10:45:03
只需键入BREAK,不带任何参数。
分段,当不带任何参数调用时,断裂设置在下一个指令断点所选择的堆栈帧
启动一个外壳将要执行,用ps找到进程ID,并通过使用发送SIGSTOP或SIGINT kill命令(例如kill -INT pid)。
GUI应用程序不会对^ C和^做出反应,并且不会影响控制台应用程序的操作。这段日子以来最不平凡的项目往往是在GUI应用程序主要用于GUI应用程序或库,你有两种选择:
发送SIGSTOP从单独的终端中的应用。这很麻烦。
如果在GDB提示符下按^ C或^ Break,GDB将终止,但应用程序仍将继续运行。然后,您可以再次运行GDB以使用
-p
命令行开关附加到它。这会失去调试器状态。
在这两种情况下,你可能会有所帮助:tasklist | grep
ProcessName
| sed -e 's/
ProcessName
*\([0-9]*\).*/gdb
ModuleName
-pid=\1/' > rungdb.sh
您可以修改这个用在shell脚本,生成文件或发送的信号,而不是附加GDB的。
info threads
将帮助你找出你想看的线程。然后使用thread
ThreadNumber
切换到它。
- 1. Visual Studio在没有任何原因的情况下停止任何断点
- 2. 在没有中断的情况下停止Python中的代码
- 3. GDB断点不会停止
- 4. 在没有显示错误的情况下调试GDB中断
- 5. 如何在没有stop()方法的情况下停止线程?
- 6. 如何在没有javascript的情况下停止CSS动画
- 7. 如何在没有System.Threading.Thread.Sleep的情况下停止程序。 C#?
- 8. C#:如何在不停止程序执行的情况下执行线程
- 9. 在没有放置断点的情况下在chrome中查看执行路径
- 10. Netbeans 8.2执行没有在中断点停止
- 11. 在不停止执行流程的情况下显示“JOptionPane.showMessageDialog”
- 12. 如何在没有WIN32 API的情况下执行此操作?
- 13. 如何在没有eval的情况下执行此操作()
- 14. 如何在没有构建文件的情况下执行Ant
- 15. 如何在没有密码提示的情况下执行mysqldump?
- 16. 如何在没有事务的情况下执行sproc?
- 17. GDB如何停止执行其他进程? GDB如何工作?
- 18. 如何在不引发错误的情况下停止MSBuild的执行?
- 19. 如何仅在执行某行后停止断点?
- 20. 如何在不停止测试执行的情况下验证文本RC
- 21. 如何让GDB停止断言失败?
- 22. gdb没有达到断点
- 23. GDB:断点没有命中
- 24. Excel VBA错误1004只有在没有断点的情况下运行
- 25. SelectBooleanCheckbox在没有鼠标悬停的情况下获得焦点
- 26. 在没有用户点击的情况下执行点击功能?
- 27. 如何在不停止站点的情况下更新ASP.Net站点dll
- 28. 在没有win32com.client的情况下自动执行Outlook的建议
- 29. 在没有中断()的情况下,新中断会在中断()之后排队并执行吗?
- 30. 如何在没有重新分区的情况下并行执行Spark UDF
过程如何开始?你是如何重视它的?默认情况下,使用`gdb -pid`附加可以使进程停止。你打了`c`后的意思? – 2015-05-08 10:47:40