Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我最近下载了 MI 库并执行/阅读了一些示例代码。在我看到的所有示例中,实现都是通过一个单独的程序,如下所示:
Main Program Interact with GDB exec another program Gather Debug info of the another program
我的问题是我们如何在当前线程/程序本身中调用/实现 GDB,即附加这个自执行过程。
我们如何在当前线程/程序本身中调用/实现 GDB MI,即将此自执行/运行进程附加到 GDB,然后告诉它逐步执行
你不能。
想一想:GDB 在附加后要做的第一件事就是停止你的程序,然后等待下一步做什么的指示。此时你的程序应该向 GDB 发送continue命令,但它不能因为它已经停止。
continue
现在,如果您的程序是多线程的,并且您要求 GDB 以不间断模式执行,并且您仔细安排事情以使执行 GDB 交互的线程本身永远不会停止,那么也许这可以工作。我怀疑它会可靠地工作。