windebug常用命令
使用~查看所有线程
切换到一号线程:~1s
查看所有线程的托管堆栈 ~* e!clrstack
怎么查看,当前线程下,变量的信息?
对于托管代码而言,最核心的命令就是!do(dump object的缩写),后面是要加上变量的地址。
怎么知道当前线程的所有变量的地址?
先来看另外一个命令,!dso(Dump Stack Objects的缩写)
!da 查看数组内容
OS命令(SOS Commands)
=======================
!threads |
view managed threads |
查看所有托管线程 |
!clrstack |
view the managed call stack |
查看托管调用栈 |
!dumpstack |
view combined unmanaged & managed call stack |
查看非托管和托管结合的调用栈 |
!clrstack -p |
view function call arguments |
查看托管函数调用的参数 |
!clrstack –l |
view stack (local) variables |
查看托管栈的局部变量 |
!name2ee module class |
view addresses associated with a class or method |
查看某个类或方法的内存地址 |
!dumpmt –mdaddress |
view the method table & methods for a class |
查看指定地址的方法表和一个类的方法集 |
!dumpmd address |
view detailed information about a method |
显示指定地址的MethodDesc结构信息 |
!do address |
view information about an object |
显示某地址的对象的信息, 包括fields, EEClass, Method Table和object size |
!dumpheap –stat |
view memory consumption by type |
显示堆内存的使用 |
!dumpheap –min size |
view memory consumption by object when at least size |
查看堆内存使用, 忽略小于size字节大小的对象 |
!dumpheap –typetype |
view memory consumption for all objects of type type |
查看所有类型为type的对象的内存使用 |
!gcroot address |
view which object are holding a reference to address |
查看所有对指定地址的对象的引用 |
!syncblk |
view information about managed locks |
查看托管的锁(SyncBlock结构) |
SOS 2.0 命令(SOS 2.0 Commands)
!bpmd module method |
set breakpoint |
在指定模块的某一指定的方法上设置断点 |
!DumpArray address |
view contents of an array |
查看数组中的元素 |
!PrintException |
view information about most recent exception |
格式化地显示最近的异常信息 |
windebug常用命令的更多相关文章
- WinDebug 常用命令表【摘】
启动, 附加进程, 执行和退出(Starting, Attaching, Executing and Exiting) ======================= Start -> All ...
- Linux 常用命令(持续补充)
常用命令: command &:将进程放在后台执行 ctrl + z:暂停当前进程 并放入后台 jobs:查看当前后台任务 bg( %id):将任务转为后台执行 fg( %id):将任务调回前 ...
- LVM基本介绍与常用命令
一.LVM介绍LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制LVM - 优点:LVM通常用于装备大量磁盘的系统,但它同样适 ...
- Linux学习笔记(一):常用命令
经过统计Linux中能够识别的命令超过3000种,当然常用的命令就远远没有这么多了,按照我的习惯,我把已经学过的Linux常用命令做了以下几个方面的分割: 1.文件处理命令 2.文件搜索命令 3.帮助 ...
- git常用命令(持续更新中)
git常用命令(持续更新中) 本地仓库操作git int 初始化本地仓库git add . ...
- 【原】npm 常用命令详解
今年上半年在学习gulp的使用,对npm的掌握是必不可少的,经常到npm官网查询文档让我感到不爽,还不如整理了一些常用的命令到自己博客上,于是根据自己的理解简单翻译过来,终于有点输出,想学习npm这块 ...
- npm常用命令
npm常用命令 环境:win7 npm 是什么 NPM(node package manager),通常称为node包管理器.顾名思义,它的主要功能就是管理node包,包括:安装.卸载.更新.查看.搜 ...
- Git 常用命令
一.初始環境配置 git config --global user.name "John Doe"git config --global user.email johndoe@ex ...
- linux iptables常用命令之配置生产环境iptables及优化
在了解iptables的详细原理之前,我们先来看下如何使用iptables,以终为始,有可能会让你对iptables了解更深 所以接下来我们以配置一个生产环境下的iptables为例来讲讲它的常用命令 ...
随机推荐
- robotium学习及整理
一. Robotium 简介 Robotium是一款国外的Android自动化测试框架,主要针对Android平台的应用进行黑盒自动化测试,它提供了模拟各种手 ...
- Dapper 事务处理
例子: using (var connection = GetOpenConnection()) using (var transaction = connection.BeginTransactio ...
- 前端基础:HTTP 状态码详解
HTTP 状态码详解 1xx(信息类):表示接收到请求并继续处理 100 客户端应当继续发送请求.这个临时响应是用来通知客户端他的部分请求已经被服务器接收,且仍未被拒绝.客户端应当继续发送请求的剩余部 ...
- BZOJ5321 JXOI2017加法(二分答案+贪心+堆+树状数组)
二分答案后得到每个位置需要被加的次数.考虑贪心.从左到右考虑每个位置,将以该位置为左端点的区间按右端点从大到小加进堆.看该位置还需要被加多少次,如果不需要加了就不管,否则取堆顶区间将其选择,BIT实现 ...
- log4net日志文件的应用
日志作为快速定位程序问题的主要手段,日志几乎是所有程序都必须拥有的一部分,下面我们就看下怎么使用log4net.dll文件: 1.下载log4net.dll文件 2.创建自己的项目 3.在自己项目下的 ...
- oracle 11g 从 dmp 文件中导出 sql 代码 的方法.
impdp sys/password full=y dumpfile=bg.dmp nologfile=y sqlfile=bg_dmp.sql 备注: bg.dmp 是 dmp 文件, bg_d ...
- idea的protobuf使用
1.安装插件 2.添加依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns=&qu ...
- 【BZOJ1922】大陆争霸(最短路)
[BZOJ1922]大陆争霸(最短路) 题面 BZOJ 洛谷 题解 最短路变形题. 定义\(dis\)表示最短路,\(d\)表示最早可以进入当前点的时间.显然\(d=max(max(dis_v,d_v ...
- HTML的标签元素分类的区别
HTML ,即Hyper Text Markup Language 超文本标记语言: 文本:纯字符,如window中的txt文本 超文本:在纯文本中嵌入样式,图片,音频,视频,链接等内容 HTML的基 ...
- RRDtool绘制lvs连接数图形
需求:用RRDtool绘制lvs的连接数图形 RRDtool是一个强大的绘图工具,作者是Tobias Oetiker. RRD全称Round Robin Database,轮转数据库,也是一个时间序列 ...