IDEA使用 多執行緒除錯

2022-08-01 04:54:13 字數 788 閱讀 3105

多執行緒同時執行時,誰先執行,誰後執行,無法控制先後,在除錯時比較麻煩,最明顯的就是斷點亂跳,一會兒停這個執行緒,一會兒停在另乙個執行緒,你無法知道是哪乙個執行緒正在執行,如下圖:

他根本不按照我們設想的來執行,執行結果結果如下:

那麼我們就要來進行設定,使他按照我們的設定的順序來執行,我們就需要在圖中的三個小紅點依次進行如下設定:

看到如下結果就很明顯他是按照我們順序進行執行的:

與此同時,我們還可以手動選擇那條執行緒首先執行,具體方法如下:

執行結果:

多執行緒除錯)

軟體除錯是我們軟體開發過程中的重要一課。在前面,我們也討論過程式除錯,比如說這裡。今天,我們還可以就軟體除錯多講一些內容。比如說條件斷點,資料斷點,多執行緒斷點等等。cpp view plain copy include intvalue 0 void test intmain 1 資料斷點 所謂資...

如何使用GDB除錯多執行緒

先寫一段多執行緒程式。加上 g引數生成可調式資訊,可以進行除錯。pthread不是linux下的預設的庫,也就是在鏈結的時候,無法找到phread庫中哥函式的入口位址,於是鏈結會失敗。在gcc編譯的時候,附加要加 lpthread引數即可解決。在使用step或continue命令除錯當前被除錯執行緒...

如何使用GDB除錯多執行緒

先寫一段多執行緒程式。加上 g引數生成可調式資訊,可以進行除錯。pthread不是linux下的預設的庫,也就是在鏈結的時候,無法找到phread庫中哥函式的入口位址,於是鏈結會失敗。在gcc編譯的時候,附加要加 lpthread引數即可解決。在使用step或continue命令除錯當前被除錯執行緒...