偵錯的工作階段管理員
如需 Visual Studio 2017 的最新文件請參閱 Visual Studio 2017 文件。
工作階段偵錯管理員 (SDM) 管理任何數目的任意數目的任意數目的機器上的多個處理序中的程式偵錯的偵錯引擎 (DE)。 除了多工器偵錯引擎,SDM 提供 IDE 偵錯工作階段的統一的檢視。
工作階段偵錯管理員作業
工作階段偵錯管理員 (SDM) 管理 DE。 可能有一個以上的機器上同時執行的偵錯引擎。 要多多工處理 DEs,SDM 會包裝數個 DEs 的介面和它們公開為單一介面 ide。
若要增加效能,某些介面不是多工。 相反地,其使用直接從 DE,以及這些介面的呼叫不會通過 SDM。 例如,搭配記憶體、 程式碼,以及文件內容的介面是不多工,因為它們參考特定的指示、 記憶體或特定 DE 偵錯使用特定程式的文件。 沒有其他 DE 必須涉及在該層級的通訊。
這不是 true 的所有內容。 運算式評估內容介面呼叫經過 SDM。 在運算式評估期間包裝 SDM IDebugExpression2因為評估該運算式時,它可能包含多個正在偵錯程式中相同的程序可能在相同執行緒上執行的 DEs 提供 IDE 的介面。
SDM 通常是做為委派機制,但它可能會變成廣播的機制。 例如,在運算式評估期間 SDM 做為廣播的機制,以通知所有 DEs 它們可以在指定的執行緒上執行程式碼。 同樣地,當 SDM 收到停止事件,它會廣播應該停止執行的所有程式。 呼叫步驟時,在 SDM 會廣播至所有程式可繼續執行。 中斷點也會廣播到每個 DE。
SDM 不會追蹤目前的處理序、 執行緒或堆疊框架。 處理程序、 程式及執行緒資訊傳送到特定的偵錯事件搭配 SDM。