在Visual Studio 中可以通过调试进入 NET Framework的
源代码 从这个意义上说 NET Framework是开放部分源代码了 但现在只支持调试模式下进入源代码 而其 这个
功能在Visual Studio Express版本中不能支持 注意 所有的源代码都是从指定的远程服务器上按需下载的 而不是VS 安装后就自带的要想使用这个功能 需要额外的配置一下 因为默认配置中VS 是不开启这个功能的 那么如何配置呢?在Scott的Blog中有专门的说明 但是他的源代码服务器URL给错了 收听了一下他们的采访视频 确定了正确配置的方式 如下 在VS 中 菜单Tools >Options后 ( )如果你在VB Profile环境下运行 需要将左下角的Show All Settings勾选上(否则将不会出现Debugging选项) 然后选择Debugging >General ( )如果你不是在VB Profile下 则直接选择Debugging >General ( )去掉 Enable Just My Code 的勾选 代表不仅仅只是调试我们自己开发的代码(言外之意也要调试 NET Framework的源代码) ( )打开 Enable Source Server Support 勾选 代表开启源代码服务器的支持(言外之意在需要的时候去源码服务器获取 NET Framwork的源代码( )选择 Debugging >Symbols 页 然后设置符号下载URL和缓存位置 设置为 ( )设置符号的本地缓存位置 如 C \temp\symbols 注意确保你的Windows账户能读写这个位置( )打开 Search the above locations only when symbols are loaded manually 选项 表明只有当symbols被手动加载得情况下才使用 在这种模式下 第一次进入需要进入 NET Framework中的某一个dll时 需要手动执行Load Symbols *** 作(注 每个dll只有一次 之后它就被缓存到( )所设置的本地缓存中了) 如果嫌麻烦 这里也提供了一个简单的方法 即勾选 Load symbols using the updated setting when this dialog is closed 表明当这个设置窗口关闭的时候 立即下载所有的symbols(这将需要几分钟~几十分钟 根据网速决定) 这样就不用以后再手动Load symbols *** 作了通过以上的设置后 在调试程序的时候就可以进入框架的源代码了 通过例子看一下 创建这个工程 并设置个断点 运行程序到断点停止时 到调用
堆栈窗口(CTRL+ALT+C)右键单击一个dll(如 System Windows Forms dll) 然后选择 Load Symbols 这样会给System Windows Forms程序集加载符号 注意 如果在配置过程中采用了当时一次性下载了所有的symbols的话 这里的Load Symbols可以省略不做现在可以查看代码了 你可以Step In(F )上面的的代码行 在第一次进入代码的时候 我们会显示EULA 点击ACCEPT 然后这个源代码就会下载下来 可以调试 net框架源代码了通过这种方式查看的源代码并非全部 这次发布的版本中包含的命名空间有 ◆System ◆System CodeDom ◆System Collections ◆System ComponentModel ◆System Data ◆System Diagnostics ◆System Drawing ◆System Globalization ◆System IO ◆System Net ◆System Reflection ◆System Runtime ◆System Security ◆System Text ◆System Threading ◆System Web ◆System Web Extensions ◆System Windows ◆System Windows Forms ◆System Xml 错误修正 以中断模式或运行模式显示 调用堆栈 窗口
在 调试 菜单中选择 窗口 然后单击 调用堆栈 或者Ctrl+D C lishixinzhi/Article/program/net/201311/12326
consumer jstack日志可以使用jstack命令来查看当前JVM中的线程堆栈信息,这样可以查看到正在运行的线程,以及哪些线程可能存在问题。可以使用如下命令来生成jstack日志:jstack -l <java_process_id> > jstacklog,其中 <java_process_id> 为JVM进程的进程id。可以使用查看jstacklog文件中的内容,来分析当前JVM中线程的堆栈信息。在 Qt Creator 中,你可以使用调试器前端界面逐行单步或逐过程调试程序,设置断点 ,检查堆栈中的内容,查看局部或全局变量的值等等,这些和我们常见的调试器提供的功能并无二致。而上述的原生信息,Qt Creator 会以清晰、简明的方式展现给程序员,这将使得原 本令人生畏的调试工作变得简单而有趣。
除了像堆栈查看器、局部变量和观察器、寄存器查看器等这些主流 IDE 都会提供的功能 外,Qt Creator 还提供了许多的功能以帮助开发者提高效率。由于调试器前端对 Qt 的内部 机制了如指掌,所以当程序出现问题时,它能够明晰描述症状。
评论列表(0条)