Dump中查看dictionary信息的方法

时间:2023-02-22 17:27:53

In order to dump the contents of a dictionary, you need to start with either the MethodTable or the name of the class, then you can follow the below steps:

0:009> !dumpheap –mt 000007feeed0b9c0

Address MT Size

000000018003e630 000007feeed0b9c0 80

000000018008ec10 000007feeed0b9c0 80

Statistics:

MT Count TotalSize Class Name

000007feeed0b9c0 2 160 System.Collections.Generic.Dictionary`2[[System.Guid, mscorlib],[Microsoft.TeamFoundation.Framework.Server.TeamFoundationPerformanceCounters, Microsoft.TeamFoundation.Framework.Server]]

Total 2 objects

Note: You can also use -Dumpheap -type System.Collections.Generic.Dictionary`2[[System.Guid, mscorlib],[Microsoft.TeamFoundation.Framework.Server.TeamFoundationPerformanceCounters,Microsoft.TeamFoundation.Framework.Server]]

0:009> !do 000000018003e630

Name: System.Collections.Generic.Dictionary`2[[System.Guid, mscorlib],[Microsoft.TeamFoundation.Framework.Server.TeamFoundationPerformanceCounters, Microsoft.TeamFoundation.Framework.Server]]

MethodTable: 000007feeed0b9c0

EEClass: 000007fef6368220

Size: 80(0x50) bytes

File: C:\Windows\Microsoft.Net\assembly\GAC_64\mscorlib\v4.0_4.0.0.0__b77a5c561934e089\mscorlib.dll

Fields:

MT Field Offset Type VT Attr Value Name

000007fef69516e8 4000c5a 8 System.Int32[] 0 instance 000000018003ea90 buckets

000007fef74448a8 4000c5b 10 …non, mscorlib]][] 0 instance 000000018003eac8 entries

000007fef6951748 4000c5c 38 System.Int32 1 instance 7 count

000007fef6951748 4000c5d 3c System.Int32 1 instance 7 version

000007fef6951748 4000c5e 40 System.Int32 1 instance -1 freeList

000007fef6951748 4000c5f 44 System.Int32 1 instance 0 freeCount

000007fef698f1a8 4000c60 18 ….Guid, mscorlib]] 0 instance 000000038000dc90 comparer

000007fef74bfd40 4000c61 20 …Canon, mscorlib]] 0 instance 0000000000000000 keys

000007fef74bd380 4000c62 28 …Canon, mscorlib]] 0 instance 000000018206b690 values

000007fef694ef78 4000c63 30 System.Object 0 instance 0000000000000000 _syncRoot

0:009> !da 000000018003eac8

Name: System.Collections.Generic.Dictionary`2+Entry[[System.Guid, mscorlib],[Microsoft.TeamFoundation.Framework.Server.TeamFoundationPerformanceCounters, Microsoft.TeamFoundation.Framework.Server]][]

MethodTable: 000007fe984b5918

EEClass: 000007fe984b5870

Size: 248(0xf8) bytes

Array: Rank 1, Number of elements 7, Type VALUETYPE

Element Methodtable: 000007fe984b57d8

[0] 000000018003ead8

[1] 000000018003eaf8

[2] 000000018003eb18

[3] 000000018003eb38

[4] 000000018003eb58

[5] 000000018003eb78

[6] 000000018003eb98

0:009> !dumpvc 000007fe984b57d8 000000018003ead8

Name: System.Collections.Generic.Dictionary`2+Entry[[System.Guid, mscorlib],[Microsoft.TeamFoundation.Framework.Server.TeamFoundationPerformanceCounters, Microsoft.TeamFoundation.Framework.Server]]

MethodTable: 000007fe984b57d8

EEClass: 000007fef6368348

Size: 48(0x30) bytes

File: C:\Windows\Microsoft.Net\assembly\GAC_64\mscorlib\v4.0_4.0.0.0__b77a5c561934e089\mscorlib.dll

Fields:

MT Field Offset Type VT Attr Value Name

000007fef6951748 4000c68 8 System.Int32 1 instance 1348927451 hashCode

000007fef6951748 4000c69 c System.Int32 1 instance -1 next

000007fef69497e0 4000c6a 10 System.Guid 1 instance 000000018003eae8 key

000007fef6953be8 4000c6b 0 System.__Canon 0 instance 000000018003e890 value

0:009> !do 000000018003e890

Name: Microsoft.TeamFoundation.Framework.Server.TeamFoundationPerformanceCounters

MethodTable: 000007feef604a38

EEClass: 000007feeed727e8

Size: 64(0x40) bytes

File: C:\Program Files\Microsoft Team Foundation Server 12.0\Application Tier\TfsJobAgent\Microsoft.TeamFoundation.Framework.Server.dll

Fields:

MT Field Offset Type VT Attr Value Name

000007fef6955a00 4000ec4 8 ….ReaderWriterLock 0 instance 000000018003e8d0 m_serializationObject

000007fef694e998 4000ec5 10 System.String 0 instance 0000000000000000 m_counterCategoryName

000007fef4c6e4d0 4000ec6 18 …ounterSetInstance 0 instance 0000000000000000 m_defaultCounterSetInstance

000007feeecb7a58 4000ec7 20 …ramework.Server]] 0 instance 0000000000000000 m_counterSetInstances

000007fef4c6e430 4000ec8 28 …ceData.CounterSet 0 instance 0000000000000000 m_counterSet

000007fef6932398 4000ec9 30 System.Object[] 0 instance 0000000000000000 m_counters

Dump中查看dictionary信息的方法的更多相关文章

  1. Android开发过程中在sh,py,mk文件中添加log信息的方法

    Android开发过程中在sh,py,mk文件中添加log信息的方法 在sh文件中: echo "this is a log info" + $info 在py文件中: print ...

  2. 在Linux终端中查看公有IP的方法详解

    首先回顾一下一般的查看IP的命令: ifconfigLinux查看IP地址的命令--ifconfigifconfig命令用于查看和更改网络接口的地址和参数 $ifconfig -a  lo0: fla ...

  3. Flask Response响应(flask中设置响应信息的方法,返回json数据的方法)

    设置响应信息的方法 1.  返回自定义的响应头,有两种方式: (1)  第一种是:视图函数return的时候,使用元组,返回自定义的信息 返回的时候的状态码可以自定义信息:"状态码   自定 ...

  4. Linux中查看系统版本的方法

    一.Linux系统中,XShell连接进去之后,查看系统版本的方法如下: 1.查找release文件 find /etc/ -name *-release 例如: 或者 2.查看release文件 c ...

  5. Linux中查看CPU信息【转】

    [转自]:http://blog.chinaunix.net/uid-23622436-id-3311579.html cat /proc/cpuinfo中的信息 processor       逻辑 ...

  6. Linux中查看CPU信息 (转)

    cat /proc/cpuinfo中的信息 processor       逻辑处理器的id. physical id    物理封装的处理器的id. core id        每个核心的id. ...

  7. Linux下查看硬件信息的方法

    用硬件检测程序kuduz探测新硬件:service kudzu start ( or restart) 查看CPU信息:cat /proc/cpuinfo 查看板卡信息:cat /proc/pci 查 ...

  8. pytorch中查看gpu信息

    其他:windows使用nvidia-smi查看gpu信息 为什么将数据转移至GPU的方法叫做.cuda而不是.gpu,就像将数据转移至CPU调用的方法是.cpu?这是因为GPU的编程接口采用CUDA ...

  9. PHP中生成json信息的方法

    <?php //php中生成json信息 //json_encode(数组/对象) $color = array('red','blue','green'); //[索引数组] echo jso ...

随机推荐

  1. NOI 2010 海拔 ——平面图转对偶图

    [题目分析] 可以知道,所有的海拔是0或1 最小割转最短路,就可以啦 SPFA被卡,只能换DIJ [代码] #include <cstdio> #include <cstring&g ...

  2. log4j输出模板

    log4j.rootLogger=DEBUG, A1,A2 log4j.appender.A1.MaxFileSize=1kb#10个备份 log4j.appender.A1.MaxBackupInd ...

  3. 详解&lt&semi;a&gt&semi;标签

    相信对于学前端的人而言<a>标签并不陌生,我们先把他所有的属性列出来 一.主要属性 一般来说,a标签有着四种状态,分别是link,hover,active,visited,接下来我会仔细讲 ...

  4. Delphi与Java中的日期互换

    在最近做的一个项目中用到了Java和Delphi,发现它们不能正确读取对方的日期类型,如在Java中写入一个值为“2007-12-1”的日期值,通过Delphi读取却不是这个值了.通过查阅资料,发现两 ...

  5. SuperSocket快速入门(三):实现你的AppServer和AppSession

    什么是AppSession? AppSession 代表一个和客户端的逻辑连接,基于连接的操作应该定义于在该类之中.你可以用该类的实例发送数据到客户端,接收客户端发送的数据或者关闭连接.同时可以保存客 ...

  6. 临时解决linux下time wait问题

     通过 netstat  -anp | grepTIME_WAIT | wc -l 命令查看数量,发现TIME_WAIT的连接数量超过了阈值   1.初步怀疑是程序没有关闭连接,codereview了 ...

  7. JNI调用问题(部分机型崩溃)

    1.今日测试发现在部分手机上游戏会崩溃,通过logcat日志发现是jni调用问题(我猜测) 错误日志中有如下语句: trying to work around app JNI bugs, but di ...

  8. AVR单片机的BOOT区

    BOOT区的由来基于一个简单的道理,即单片机的程序是保存在FLASH中的,要运行程序就必须不停的访问FLASH存储器.对于一般的FLASH存储器,数据的写入需要一定的时间来完成,在数据写入完成之前,存 ...

  9. BZOJ&lowbar;1433&lowbar;&lbrack;ZJOI2009&rsqb;假期的宿舍&lowbar;二分图匹配

    BZOJ_1433_[ZJOI2009]假期的宿舍_二分图匹配 题意: 学校放假了······有些同学回家了,而有些同学则有以前的好朋友来探访,那么住宿就是一个问题.比如A 和B都是学校的学生,A要回 ...

  10. 转 MYSQL SELECT &period;&period;&period; FOR UPDATE and SELECT &period;&period;&period; LOCK IN SHARE MODE Locking Reads

    原文: http://dev.mysql.com/doc/refman/5.0/en/innodb-locking-reads.html In some circumstances, a consis ...

相关文章