複製鏈接
請複製以下鏈接發送給好友

斷點

(調試器功能之一)

鎖定
斷點,調試器的功能之一,可以讓程序中斷在需要的地方,從而方便其分析。
中文名
斷點
外文名
breakpoint
分    類
計算機調試

目錄

斷點簡介

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

斷點基本含義

常用的斷點包括:INT3斷點硬件斷點、內存斷點、消息斷點、條件斷點等。
中文詞條名:斷點
英文詞條名:break-point
斷點是一個信號,它通知調試器,在某個特定點上暫時將程序執行掛起。當執行在某個斷點處掛起時,我們稱程序處於中斷模式。 [1]  進入中斷模式並不會終止或結束程序的執行。執行可以在任何時候繼續。
CPU有一個單獨的執行序列,會一條指令一條指令的順序執行。要處理類似IO或者硬件時鐘這樣的異步事件時CPU就要用到中斷。硬件中斷通常是一個專門的電信號,連接到一個特殊的“響應電路”上。這個電路會感知中斷的到來,然後會使CPU停止當前的執行流,保存當前的狀態,然後跳轉到一個預定義的地址處去執行,這個地址上會有一箇中斷處理例程。當中斷處理例程完成它的工作後,CPU就從之前停止的地方恢復執行。
斷點模式可以看作一種超時。所有元素(例如,函數、變量和對象)都保留在內存中,但它們的移動和活動被掛起了。在中斷模式下,您可以檢查它們的位置和狀態,以查看是否存在衝突或 bug。您可以在中斷模式下對程序進行調整。例如,可以更改變量的值。可以移動執行點,這會改變執行恢復後將要執行的下一條語句。在 C++、C# 和 Visual Basic 中,甚至可以在中斷模式下對代碼本身進行更改(使用一種稱為“編輯並繼續”的強大功能)。
斷點提供了一種強大的工具,使您能夠在需要的時間和位置掛起執行。與逐句或逐條指令地檢查代碼不同的是,可以讓程序一直執行,直到遇到斷點,然後開始調試。這大大地加快了調試過程。沒有這個功能,調試大的程序幾乎是不可能的。
參考資料