Visual studio Visual Studio加载符号
我现在在一个项目上工作了一段时间,至少对我来说VisualStudio开始表现得很奇怪 我观察到,当我开始调试时,它构建了项目,开始了部署,部署完成,并开始为我的项目加载符号 但是它非常慢,我不知道为什么它开始做这一步。我该怎么办 是否需要此符号加载步骤?如何禁用它Visual studio Visual Studio加载符号,visual-studio,debugging,debug-symbols,Visual Studio,Debugging,Debug Symbols,我现在在一个项目上工作了一段时间,至少对我来说VisualStudio开始表现得很奇怪 我观察到,当我开始调试时,它构建了项目,开始了部署,部署完成,并开始为我的项目加载符号 但是它非常慢,我不知道为什么它开始做这一步。我该怎么办 是否需要此符号加载步骤?如何禁用它 在“工具->选项->调试->符号”对话框中,没有添加符号文件(.pdb)位置。我在下面的字段中指出了我的项目的调试目录,并选中了“仅当符号为….时才搜索上面的目录”复选框。如何设置此对话框以关闭符号加载 我在模块窗口中查看加载了哪些
在“工具->选项->调试->符号”对话框中,没有添加符号文件(.pdb)位置。我在下面的字段中指出了我的项目的调试目录,并选中了“仅当符号为….时才搜索上面的目录”复选框。如何设置此对话框以关闭符号加载 我在模块窗口中查看加载了哪些符号,但它没有告诉我什么。有什么问题
在工具、选项、调试和符号中配置 您可以查看输出窗口(视图、输出),查看它通常在做什么。如果它真的很慢,这可能意味着它正在点击一个符号服务器,可能是微软的,来下载丢失的符号。在每次启动时找不到的每个文件都需要三次HTTP点击-有时可以在底部的状态栏或Fiddler中看到这一点。在调试时,您可以在调试、窗口、模块中看到哪些模块加载了符号
符号意味着您可以将有用的堆栈跟踪信息输入到第三方和系统程序集中。你肯定需要它们来编写你自己的代码,但我认为不管怎样,它们都会被加载。最好关闭该菜单中的任何非本地符号源,如果要为不需要调试的系统程序集加载大量符号,可以暂时禁用加载这些符号以加快调试启动速度,但加载这些符号通常很有用。调试->删除所有断点()
之后,你可以再次使用它们,但只需使用一次。它还将删除一些“无效”断点,然后再次快速加载符号。我已经关注这个问题好几天了:(.加载速度慢的另一个原因是如果您在调试选项中禁用了“仅启用我的代码”。要启用此功能,请转到:
Tools -> Options -> Debugging -> General -> Enable Just My Code (Managed Only)
请确保选中此选项。我遇到了类似的问题。在我的例子中,我设置了从Microsoft服务器下载用于WinDbg的_NT_SYMBOL_路径,设置后,Visual Studio将使用该路径,无法忽略它。删除该环境变量解决了我的问题。对我来说,它似乎与断点有关,如图所示但是,我发现了两个不涉及删除所有断点的变通方法:
- 重新启动VisualStudio似乎暂时解决了这个问题
- 调试时单击“X”按钮关闭Visual Studio会导致“是否要停止调试?”消息框弹出;此消息框打开时,符号以普通速度加载。加载所有符号后,可以单击“否”取消关闭
- 刚刚遇到这个问题。
删除断点不起作用,或者至少不只是靠它自己。
失败后,我进入工具>选项>调试>符号和“空符号缓存”
然后清洗溶液并重建
现在似乎工作正常。因此,如果您尝试列出的所有其他内容,但仍然没有区别,这些额外的信息可能会有所帮助…尝试右键单击其中一个断点,然后选择“位置”。然后选中复选框“允许源代码与原始版本不同”(在我的示例中是Visual S)tudio正在我的计算机上引用光盘驱动器的路径中寻找第三方PDB。由于托盘中没有光盘,Windows大约花了30分钟才出现故障,这反过来又减慢了Visual Studio从该位置加载PDB的速度。更多详细信息,请参阅我的完整答案:刚刚遇到此问题 我通过导航到以下位置修复了它: 工具->选项->调试->符号 然后取消选中符号文件(.pdb)位置的所有非本地源
e、 g.Microsoft Symbol服务器和msdl.Microsoft.com/download/symbols我也遇到同样的问题,即使在关闭符号加载后,Visual Studio中的模块加载速度也非常慢 解决方案是关闭杀毒软件(在我的例子中是NOD32),或者更好的做法是向其添加异常,以便它忽略进程从中加载程序集的路径(在我的例子中是GAC文件夹和临时ASP.NET文件文件夹)。我的2美分 在x64发布模式(CPU采样)下尝试获取(Visual Studio 2013)诊断报告时,我遇到了类似的问题,当加载所需dll文件的符号时,可执行文件的符号将无法加载 我没有在“符号”菜单中更改任何内容,而是在解决方案资源管理器中可执行程序线程的属性页中进行了一些更改,即 配置属性/常规/启用托管增量生成为是 配置属性/调试/合并环境为否 配置属性/C/C++/将浏览信息启用为是(/FR) 配置属性/Linker/启用增量链接到YES(/Incremental) 编辑:最后一个会起作用 … 配置属性/Linker/Debug/将调试信息生成为Yes(/Debug) … 在那之后,它工作了,并且很好地加载了符号。 我确信上面的一个或多个方法对我起到了作用(尽管我不确定具体是哪一个),我只是想让其他人知道并尝试一下
和平您可以尝试以下答案: