首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >调试System.Threading

调试System.Threading
EN

Stack Overflow用户
提问于 2019-07-23 15:49:35
回答 1查看 224关注 0票数 0

可以调试System.Threading库吗?

我有一个堆栈跟踪,看起来有点像这样:

我遵循了关于如何调试.NET库的所有步骤。

  • 取消“启用我的代码”
  • 检查“启用.NET框架源步进”
  • 检查“启用源服务器支持”
  • 选中符号文件(.pdb)下的“Microsoft符号服务器”

然而,当我尝试调试一个System.threadin调用时,我得到了一个未找到的文件页面,该页面要求我浏览并找到.cs文件。

就像这样。

可以调试System.Threading库吗?我有错过任何步骤吗?

编辑:我不确定它是复制的。例如,另一个线程上的顶级解决方案要求我转到referencesource.microsoft.com,它甚至不包含System.Threading。这是一个专门针对那个图书馆的问题。如果没有其他方法,那么有效的答案可能是“调试System.Threadin是不可能的”,或者可以使用其他方法进行调试。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-07-24 02:55:58

正常场景:

我们可以尝试升级到最新的.net 4.8框架,它适用于某些情况,比如如何调试System.Web.dll?无法进入PresentationFramework这两个类似的问题。

因为我们应该确保https://referencesource.microsoft.com/包含我们正在调试的确切版本,大多数情况下最好选择最新版本。

,但对于这个:

由于升级到.net 4.8似乎不能解决这个问题(可能是我在这个过程中做错了什么?),.I选择了另一个方向(using local source),但它在我这边有效。

在调试.net框架源代码时,除了源代码服务器之外,它还将尝试在本地目录中找到源代码。所以我们可以在我们的机器和source code中下载.zip文件和configure the Source File settings for solution

1.Go https://referencesource.microsoft.com/并单击右上角的下载按钮。

2.Download将.NET框架的整个源代码作为.zip文件。因为我的项目以.net framework 4.8为目标,所以我下载了.net 4.8软件包

(我们只需要下载与我们的项目相对应的适当软件包,不需要全部下载)

3.Unzip包含源代码的.zip文件,并将其移动到我决定保留源代码的位置,然后在VS IDE => >中右击解决方案、=>属性、=>公共属性、=>调试源文件和新行(Ctrl-Insert),并输入文件夹的路径(解压缩文件夹中的 source 文件夹)=>Apply=>OK。

对我来说,我把解压缩的DotNet48RTM文件夹放在Documents文件夹中,所以我在Debug源文件设置中输入的路径是C:\Users\xxx\Documents\DotNet48RTM\Source

然后,在运行重新构建之后,我可以进入System.Threading库。

此外,确保您已经满足了提到的这里的所有需求。您应该禁用require source files to exactly match the original version选项和Debug=>Options=>Symbols中的Empty the symbol cache

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57167932

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档