zoukankan      html  css  js  c++  java
  • Dump中查看dictionary信息的方法

    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:WindowsMicrosoft.NetassemblyGAC_64mscorlibv4.0_4.0.0.0__b77a5c561934e089mscorlib.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:WindowsMicrosoft.NetassemblyGAC_64mscorlibv4.0_4.0.0.0__b77a5c561934e089mscorlib.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 FilesMicrosoft Team Foundation Server 12.0Application TierTfsJobAgentMicrosoft.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

  • 相关阅读:
    showSoftInput不起作用
    GridView在PopWindow中OnItemClick不响应
    白盒测试范围
    Winform的ListBox的ValueMember和DisplayMember绑定的名称所属对象必须是Public的。
    谷歌浏览器安装adblock广告屏蔽插件
    php+curl上传文件
    win10我能ping通他人,但他人ping不同我
    自己的配置文件以及操作
    安装redis,执行make test时遇到You need tcl 8.5 or newer in order to run the Redis test
    安装redis时遇到zmalloc.h:50:31: 致命错误:jemalloc/jemalloc.h:没有那个文件或目录
  • 原文地址:https://www.cnblogs.com/vveiliang/p/6245690.html
Copyright © 2011-2022 走看看