(3)Use Microsoft’s PDBs to debug or profile external assemblies or libraries

招数3:

使用Microsoft的PDBs调试和分析外部的程序集和库

To accurately debug or profile an external assembly or library (i.e. one you’re not directly compiling), you need the PDB files that accompany each of the DLLs.These files give your debugger or profiler access to information such as function names, line numbers,and other related metadata.
为了精确地调试和分析外部程序集或者库文件(i.e.你没有直接编译),你必须每个DLLs文件都有PDB文件。这些文件给你的调试器和分析器提供了访问比如函数名,行数,和其他本地的元素据。

One thing that sucks in particular is debugging and profiling native Microsoft .NET assemblies without this kind of information. Fortunately, there’s a solution for this very issue. With a little-known feature in Visual Studio 2012 (and 2010 too!), you can connect to Microsoft’s Symbol Servers and obtain most of the debugging symbols for their assemblies and libraries.
一件特别糟糕的事情,在没有这种信息的情况下调试和分析本地的Microsoft .NET 程序集。很幸运,有一种解决方案应对这种非常问题。随着Visual Studio 2012(2010 也一样!)鲜为人知的一种特性,你能连接到Microsft的符号服务器获取到绝大多数的程序集和库文件的调试符号。

Just go to Tools –> Options –> (expand) Debugging –> Symbols, and select the Microsoft Symbol Servers as your source for Symbols.Getting the symbols from Microsoft every time you debug or profile is slow and painful. It’ll even give you a pop-up saying as much once you check the Microsoft Symbol Servers, so be sure to
specify a directory under “Cache symbols in this directory”.
在工具 –> 选项 –> 调试 –> 符号下选择Microsoft 符号服务器作为你的符号源。你调试或者分析每次都要从Microsoft获取符号是很慢而且伤脑筋的事情。一旦你检查Microsft符号服务器,它会给你一个弹层确定是否指定了一个目录用于“缓存符号的目录”。

It will keep a local copy of the PDBs and check for updates every so often. As a result, you get your regular debugging/profiling AND you can see the function names of the Microsoft assemblies.
它会保留一个PDBs的本地备份,经常检查更新。因此你向往常一样调试和分析能看见Microsoft程序集的函数名称。

教你50招提升ASP.NET性能(三):使用Microsoft的PDBs调试和分析外部的程序集和库的更多相关文章

  1. 教你50招提升ASP.NET性能(二十六):对于开发人员的数据库性能技巧

    Database Performance Tips for Developers对于开发人员的数据库性能技巧 As a developer you may or may not need to go ...

  2. 教你50招提升ASP.NET性能(十六):把问题仍给硬件而不是开发人员

    (27)Throw hardware at the problem, not developers 招数27: 把问题仍给硬件而不是开发人员 As developers, we often want ...

  3. 教你50招提升ASP.NET性能(十一):避免在调试模式下运行网站

    (17)Avoid running sites in debug mode 招数17: 避免在调试模式下运行网站 When it comes to ASP.NET, one of the most c ...

  4. 教你50招提升ASP.NET性能(七):总是在服务器端执行验证

    (13)Always perform validation on the server as well 招数13: 总是在服务器端执行验证 This isn’t exactly a performan ...

  5. 教你50招提升ASP.NET性能(二):移除不用的视图引擎

    (2)Remove unused View Engines 招数2: 移除不用的视图引擎 If you're an ASP.NET MVC developer, you might not know ...

  6. 教你50招提升ASP.NET性能(二十四):ORM小窍门

    ORM TipsORM小窍门 More and more people are using Object to Relational Mapping (ORM) tools to jump the d ...

  7. 教你50招提升ASP.NET性能(二十一):避免使用会话状态

    (39)Avoid using session state 招数39: 避免使用会话状态 Where possible, you should try and avoid using session ...

  8. 教你50招提升ASP.NET性能(二十):7条便利的ViewState技巧

    (32)Seven handy ViewState tips 招数32: 7条便利的ViewState技巧 Every time I have to deal with a classic ASP.N ...

  9. 教你50招提升ASP.NET性能(十九):静态集合

    (30)Static collections 招数30: 静态集合 If a collection is static, make sure it only contains the objects ...

随机推荐

  1. XST综合、实现过程包含哪些步骤

    2013-06-25 18:53:50 在ISE的主界面的处理子窗口的synthesis的工具可以完成下面的任务: 查看RTL原理图(View RTL schematic) 查看技术原理图(View ...

  2. linux0.11文件分析

    在kernel包中有几个重要的文件夹和文件,他们各司其职,处理着有关内核的一些功能操作.其中文件夹有三个:blk_drv(块设备驱动),chr_drv(字符设备驱动),math(数学协处理器)  文件 ...

  3. Target host is not specified错误

    对于httpClient4.3访问指定页面,可以从下面的demo抽取方法使用. 注意:对于URL必须使用 http://开始,否则会有如下报错信息: 或者在设置cookie时带上domain: coo ...

  4. can't able to update the design capacity in bq27441-G1

    /*************************************************************************** * can't able to update ...

  5. Button 自定义(一)-shape

    需求:自定义Button,使用系统自定义Shape: 效果图: 1.默认状态 2.选中状态 实现分析: 1.目录结构: 代码实现: 1.button_normal.xml <?xml versi ...

  6. [面试题] for() while() 条件判断 赋值问题

    http://group.jobbole.com/7963/#comm-11311 [题目]:下列for循环的循环体执行次数为 for(int i=10, j=1; i=j=0; i++, j--)( ...

  7. [原]SyntaxHighlighter使用笔记

    [Date]2013-09-21 [Environment]SyntaxHighlighter 3.0.83 [Author]wintys (wintys@gmail.com) http://wint ...

  8. 如何添加网站for Linux(绑定域名)

    [以下配置的路径以阿里云提供的标准环境路径为准,如果您另行安装,请根据实际安装路径配置].   1.cd /alidata/server/httpd/conf/vhosts/ 进入绑定域名所在目录, ...

  9. JDK1.5新特性(七)……Annotations

    概述 Annotations (Metadata) - This language feature lets you avoid writing boilerplate code under many ...

  10. HTML5学习之FileReader接口

    http://blog.csdn.net/zk437092645/article/details/8745647 用来把文件读入内存,并且读取文件中的数据.FileReader接口提供了一个异步API ...