开发者

What is the difference between intellitrace and moving to a previous line of code when stepping through?

I read a description of how intellitrace in VS2010 Ultimate is like going back in time, in the exec开发者_JS百科ution of your application.

However, this sounds just like moving the line marker to a previous line (that yellow arrow in the breakpoints margin to the left of the code, when you are stepping through code).

Thanks


From Wikipedia:

Unlike the current debugger, that records only the currently-active stack, IntelliTrace records all events like prior function calls, method parameters, events, exceptions etc. This allows the code execution to be rewound in case a breakpoint wasn't set where the error occurred.

When you move the execution point back you run the same code again, but the variables might have different values. This is because running the code the first time may have changed some variables.

With Intellitrace you should be able to run the same code again with the same values as the first time. I have not tested it though.


The difference is that intellitrace keeps the history of each of those moments that it recorded. So unlike moving the line marker it is showing you the value of all the variables at that point in time. Similar to how a memory dump but for debugging.

It relies heavily on Tracing hence the name. Here is a good explanation of how it works. It's actually pretty cool.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜