Live和IntelliTrace調試有任何區別嗎?Live和IntelliTrace調試有什麼區別?
也爲什麼我編碼C++時不能使用IntelliTrace?如果在編寫C++時有一種使用方法,我該如何適應它?
Live和IntelliTrace調試有任何區別嗎?Live和IntelliTrace調試有什麼區別?
也爲什麼我編碼C++時不能使用IntelliTrace?如果在編寫C++時有一種使用方法,我該如何適應它?
IntelliTrace與實時調試不同。 http://msdn.microsoft.com/en-us/library/dd264915.aspx
它沒有爲C++實現,因爲它使用.net環境。 IntelliTrace僅在Visual Studio Ultimate
(或VS2015以上版本的企業版本中可用,儘管它可能會在未來的版本中更改),上面的鏈接已經解釋了所有功能。
實時調試和IntelliTrace之間的區別是某種「重玩性」。雖然您可以通過實時調試進行轉儲,但您只能獲得一個時間點,而IntelliTrace允許您收集和檢查應用程序的歷史記錄。 IntelliTrace必須進行配置,以便在應用程序運行時記錄其數據。
從上面的頁面複製粘貼:
傳統或現場調試只顯示你的應用程序與往事 有限的數據當前的狀態。您必須根據應用的當前狀態推斷這些事件 ,否則您必須通過重新運行您的應用來重新創建這些事件 。
IntelliTrace通過 在這些時間點記錄特定事件和數據擴展了這種傳統調試體驗。這讓 你看到你的應用程序中發生了什麼,而無需重新啓動它,特別是如果你跳過錯誤的位置,那麼 尤其如此。 IntelliTrace在傳統調試期間默認打開 ,並自動收集數據, 隱藏。這使您可以在傳統調試 和IntelliTrace調試之間輕鬆切換以查看記錄的信息。請參閱記錄 使用IntelliTrace進行代碼執行以在Visual Studio中進行調試以及 IntelliTrace收集什麼數據?
小故事:在Visual Studio團隊試圖儘可能多的功能推向更低的版本,儘可能使他們能夠更多的人訪問,但在什麼版本是由營銷部門決定哪些功能是可用的。
對於實時調試,目標應用程序暫停,調試器可以觀察(有時修改)整個目標進程。
IntelliTrace,因爲它的名稱建議可以理解爲「智能跟蹤」,某些被認爲有價值的信息被記錄到日誌文件(.itrace文件)中。您可以保存並在另一臺機器上稍後的時間點打開日誌文件。記錄的信息包括應用程序的進程,線程,模塊,IntelliTrace事件以及基於用戶配置的函數調用。對於每個事件和函數調用,還會記錄具有選定參數值的調用堆棧。
Visual Studio需要一些用戶界面才能查看此日誌,而調試器用戶界面幾乎擁有一切。這並不準確,但通常您可以將「IntelliTrace調試」理解爲使用調試器UI查看跟蹤日誌。大多數調試器窗口(進程,線程,調用堆棧,本地,模塊等)按預期工作,但它們只是顯示目標應用程序歷史中發生的事件或函數調用。用戶只能觀察,但不能修改目標應用程序。