簡體   English   中英

沒有可用的當前斷點時如何使gdb停止執行

[英]how to make gdb stop execution when no current breakpoint is avaiable

例如,我的代碼是:

int main(){
    f();
    g();
    while(1){
        h();
    }
    ..
 }

我在f,g上設置斷點。 當然,該程序將在f()/ g()處停止,但是當我鍵入“ c”時,它將繼續運行。 目前,我必須輸入“ CTL + C”將其停止。 程序也被殺死。

如果程序正在運行,是否還有其他優美的方法可以從gdb退出而不殺死程序?

謝謝

我必須輸入“ CTL + C”將其停止。 程序也被殺死。

鍵入“ CTL + C”,然后gdb將捕獲SIGINT,然后鍵入detach ,然后鍵入“ Ctrl-D”或quit gdb將脫離您的進程並退出。 您的程序將繼續運行,其父進程將變為init (PID = 1)


更新:

 (gdb) info signals SIGINT Signal Stop Print Pass to program Description SIGINT Yes Yes No Interrupt 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM