斷點[調試器功能之一]

斷點[調試器功能之一]

斷點,調試器的功能之一,可以讓程式中斷在需要的地方,從而方便其分析。

簡介

斷點也可以在一次調試中設定斷點,下一次只需讓程式自動運行到設定斷點位置,便可在上次設定斷點的位置中斷下來,極大的方便了操作,同時節省了時間。

基本含義

常用的斷點包括:INT3斷點、硬體斷點、記憶體斷點、訊息斷點、條件斷點等。

中文詞條名:斷點

英文詞條名:break-point

斷點是一個信號,它通知調試器,在某個特定點上暫時將程式執行掛起。當執行在某個斷點處掛起時,我們稱程式處於中斷模式。 進入中斷模式並不會終止或結束程式的執行。執行可以在任何時候繼續。

CPU有一個單獨的執行序列,會一條指令一條指令的順序執行。要處理類似IO或者硬體時鐘這樣的異步事件時CPU就要用到中斷。硬體中斷通常是一個專門的電信號,連線到一個特殊的“回響電路”上。這個電路會感知中斷的到來,然後會使CPU停止當前的執行流,保存當前的狀態,然後跳轉到一個預定義的地址處去執行,這個地址上會有一個中斷處理例程。當中斷處理例程完成它的工作後,CPU就從之前停止的地方恢復執行。

斷點模式可以看作一種逾時。所有元素(例如,函式、變數和對象)都保留在記憶體中,但它們的移動和活動被掛起了。在中斷模式下,您可以檢查它們的位置和狀態,以查看是否存在衝突或 bug。您可以在中斷模式下對程式進行調整。例如,可以更改變數的值。可以移動執行點,這會改變執行恢復後將要執行的下一條語句。在 C++、C# 和 Visual Basic 中,甚至可以在中斷模式下對代碼本身進行更改(使用一種稱為“編輯並繼續”的強大功能)。

斷點提供了一種強大的工具,使您能夠在需要的時間和位置掛起執行。與逐句或逐條指令地檢查代碼不同的是,可以讓程式一直執行,直到遇到斷點,然後開始調試。這大大地加快了調試過程。沒有這個功能,調試大的程式幾乎是不可能的。

相關詞條

熱門詞條

聯絡我們