В чем разница между intellitrace и переходом к предыдущей строке кода при переходе? - PullRequest
2 голосов
/ 23 июля 2010

Я прочитал описание того, как intellitrace в VS2010 Ultimate похож на возвращение во времени при выполнении вашего приложения.

Однако это звучит так же, как перемещение маркера строки к предыдущей строке (этой желтойстрелка в поле точек останова слева от кода, когда вы переходите по коду).

Спасибо

Ответы [ 2 ]

0 голосов
/ 23 июля 2010

Разница в том, что intellitrace хранит историю каждого из тех моментов, которые он записал. Таким образом, в отличие от перемещения маркера линии, он показывает вам значение всех переменных в данный момент времени. Подобно тому, как дамп памяти, но для отладки.

Он сильно зависит от трассировки, отсюда и название. Здесь - хорошее объяснение того, как это работает. Это на самом деле довольно круто.

0 голосов
/ 23 июля 2010

Из Википедия :

В отличие от текущего отладчика, который записывает только активный в данный момент стек, IntelliTrace записывает все события, такие как предыдущие вызовы функций, параметры методов, события, исключения и т. Д. Это позволяет перематывать выполнение кода в случае, если точка останова не установлена где произошла ошибка.

Когда вы перемещаете точку выполнения назад, вы снова запускаете тот же код, но переменные могут иметь разные значения. Это связано с тем, что при первом запуске кода некоторые переменные могли измениться.

С Intellitrace вы сможете снова запустить тот же код с теми же значениями, что и в первый раз. Я не проверял это все же.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...