【问题标题】:What is the difference between Debug Mode and Release Mode in Visual Studio 2010? [duplicate]Visual Studio 2010 中的调试模式和发布模式有什么区别? [复制]
【发布时间】:2011-07-17 08:39:06
【问题描述】:

可能的重复:
Debug/Release difference
Performance differences between debug and release builds

在Debug模式和Release模式下编译运行asp.net/c#项目到底有什么不同?

【问题讨论】:

标签: c# asp.net


【解决方案1】:

调试模式中,您的.exe 内部有调试信息(源代码、变量名和其他类似的东西)。

发布模式下,您的.exe 缺少调试信息会使其更小,并且由于占用空间更小,性能可能更好。

【讨论】:

  • 最大的差异可能是在 Release 中,开启了许多优化以使程序性能更好,这通常会妨碍调试程序的能力。因此,差异不仅仅是缺少调试信息。
【解决方案2】:

这两者最大的区别在于: 在调试版本中,会发出完整的符号调试信息以帮助调试应用程序,并且不考虑代码优化。 在发布版本中,不会发出符号调试信息,并且优化了代码执行。 此外,由于符号信息不会在发布版本中发出,因此最终可执行文件的大小小于调试可执行文件。

由于编译器优化或内存布局或初始化的差异,人们可能会在发布版本中看到有趣的错误。这些通常被称为发布 - 只有错误:)

就执行速度而言,发布的可执行文件肯定会执行得更快,但这种差异并不总是很显着。

【讨论】:

    【解决方案3】:

    在生成的可执行文件中为您提供更多调试信息的其他编译参数以及您希望在 msdn 上阅读的更多选项。

    http://social.msdn.microsoft.com/Forums/en/csharpgeneral/thread/74db169a-e244-496e-ae97-8dfec18ff2e5

    【讨论】:

      猜你喜欢
      • 2019-10-22
      • 1970-01-01
      • 1970-01-01
      • 2010-09-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多