Live和IntelliTrace调试之间的差异是什么?
What is the diffrence between Live and IntelliTrace Debugging ?
LIVE和IntelliTrace调试之间是否有区别?
以及为什么我在编码C 时无法使用IntelliTrace?如果在编码C 时有一种使用方法,我该如何调整它?
用于实时调试,目标应用程序被暂停,调试器可以观察(有时修改)整个目标过程。
IntelliTrace所建议的名称可以理解为"智能跟踪",某些被认为有价值的信息记录到日志文件(.Itrace文件)中。您可以在另一台计算机上的以后时间点保存并打开日志文件。记录的信息包括基于用户配置的应用程序过程,线程,模块,IntelliTrace事件和函数调用。对于每个事件和函数调用,还记录了带有选定参数值的调用堆栈。
Visual Studio需要一些UI来查看此日志,并且Debugger UI几乎拥有所有内容。它并不精确,但是您通常可以将" IntelliTrace调试"视为使用Debugger UI查看跟踪日志。大多数调试器Windows(过程,线程,呼叫堆栈,当地人,模块等)都可以按预期工作,但是它们所做的不过是显示目标应用程序历史记录中发生的事件或功能调用。用户只能观察但不能修改目标应用程序。
IntelliTrace与实时调试不同。http://msdn.microsoft.com/en-us/library/dd264915.aspx
使用.NET环境,它未针对C 实现。IntelliTrace仅在Visual Studio Ultimate
(或VS2015起企业)中可用,尽管它可能会在未来版本中发生变化),并且上面的链接已经解释了所有功能。
实时调试和IntelliTrace之间的区别是某种"可重复性"。虽然您可以通过实时调试进行转储,但您只能获得一个时间点,而IntelliTrace允许您收集并检查应用程序的历史记录。必须配置IntelliTrace,以便在应用程序运行时记录其数据。
从上面的页面复制粘贴:
传统或现场调试仅显示您的应用的当前状态 关于过去事件的数据有限。您要么必须推断这些事件 根据应用程序的当前状态,或者您必须重新创建这些事件 通过重新设计您的应用程序。
IntelliTrace通过 在这些时间点记录特定事件和数据。这让 您会看到应用程序中发生的情况而不重新启动,尤其是在 您走过错误所在的位置。IntelliTrace默认打开 在传统调试期间,并自动收集数据 看不见。这使您可以在传统调试之间轻松切换 和IntelliTrace调试以查看记录的信息。请参阅记录 使用IntelliTrace执行代码,用于在Visual Studio和 IntelliTrace收集了哪些数据?
小型轶事:Visual Studio团队试图将尽可能多的功能推向较低版本,以使更多人可以访问它们,但是市场部决定了哪些功能。
- 在两台机器之间进行时间戳的最佳c++chrono函数是什么
- 不同的类或结构初始化方法之间的性能差异是什么?
- #include < conio.h> 和 getch() 方法之间的关系是什么?
- 超市管理系统的类别之间应该是什么关系?
- 在C++和Python之间交换数据的最快方法是什么?
- 计算两个uint8_t变量之间差值的最快方法是什么?
- 在 c++ 中,在线程之间共享数据容器的最佳方法是什么?
- 使用静态类成员而不是私有字段之间的速度差异是什么?
- C++和Python之间平等含义的区别的根源是什么?
- 在查找子集中元素和元素数量之间的二进制比较背后的逻辑是什么?
- 类和变量之间的"ampersand operator"是什么意思?
- $(objs):%.o:%.cpp和$(objs):$(objs:.o = .cpp)之间的差异是什么
- 在QTcpSocket和python套接字之间交换数据的正确方法是什么?
- cin.ignore(1)之间的分歧是什么?和cin.ignore(n)
- 数组与其地址之间的关系是什么?
- Qt中数据类(模型)和视图/控制器类之间的数据通信的正确方式是什么
- 当编译器看到 std::vector<Typo> 和 std::vector<struct 拼写错误时发出的诊断之间的差异背后的理由是什么>
- 相对于一元算术运算符+,C和C++之间存在差异的原因是什么
- 链接列表C 类,这两个添加节点实现之间的差异是什么?
- 在QT中的两个窗口之间进行通信的最佳方法是什么?