• 一些可能没用过的调试窗口


    首先说明:如果没有进入调试模式的话,默认的调试窗口如下:

    image

    开始前的准备:

    新建控制台程序DebugWindowDemo:

    修改Program.cs 的代码为:

    program.cs

    F5,开始运行:

    由于Debugger.Break();

    所以当执行到这里的时候,Debugger会中断。

     

    这个时候再看看调试窗口会发现多了几个窗口:

    image

    点击调试->窗口->并行任务,界面如下:

    image

    按下F5,继续运行:

    image 

    双击查看相应等待的任务,就可以知道这个工作线程为什么等待了。

     

    例如:

    image

    继续按F5,运行,你应该会看到:

    image

    总之关于当前运行的并行任务你都可以看的到。

    关闭程序,重新F5,进入调试模式

     

    选择调试->窗口->并行堆栈

    可以看到:

    image

    其中蓝线代表当前正在执行的线程。

    如果右键点击方法视图的S.C ,可以看到右键菜单如下:image

    点击切换方法视图

    image

    可以看到:

    image

    关闭程序,重新F5,进入调试模式

     

    点击调试->窗口->线程:

    可以看到:

    image

    当前控制台的所有线程都在这里。

    在线程上点击右键可以冻结线程:

    image

     

    冻结线程也就是Pause线程,

    冻结的线程可以被解冻,也就是Resume。

     

    其他的窗口:

    调试->窗口->模块:可以看到当前程序加载的所有模块。

    image

    调试->窗口->进程:

    image

    调试->窗口->反汇编:

    image

    调试->窗口->寄存器:

    image

    调试->窗口->调用堆栈:

    调用堆栈窗口是比较常用的窗口:

    image

    上图表示先调用A方法,接着B方法,接着C方法。

    也可以认为是C方法是B调用,而B方法是A调用的。

    其他窗口比较常用,就不介绍了,是不是有一些你没用到的窗口呢?

  • 相关阅读:
    Codeforces Round #568 (Div. 2) D. Extra Element
    Codeforces Round #567 (Div. 2) B. Split a Number
    [dp+博弈]棋盘的必胜策略
    [暴力+前缀和]2019牛客暑期多校训练营(第六场)Upgrading Technology
    [set]Codeforces 830B-Cards Sorting
    [二分]煤气灶
    [STL] Codeforces 69E Subsegments
    剑指offer——判断B树是否是A树的子结构
    在浏览器地址栏输入URL执行后网页显示全过程
    链表反转【图解】
  • 原文地址:https://www.cnblogs.com/LoveJenny/p/2280157.html
Copyright © 2020-2023  润新知