zoukankan      html  css  js  c++  java
  • 用于可视化虚拟内存使用情况和GC堆使用情况的工具。

    我发现一个很棒的工具,可以很好地显示进程中的内存使用情况。

    这个示例工具将为您提供虚拟内存空间的直观概述(从内存转储),显示您的分配存在于何处以及您拥有的分配类型。例如,在下面的屏幕截图中,您可以看到在内存空间的开始,我们有大量的虚拟分配(深绿色-已提交,浅绿色-保留),然后我们有大量的可用空间(白色),在内存空间的末尾,我们可以看到我们的DLL分散开来(深红色)。


    在底部屏幕中,我们可以看到GC(.NET)堆。换句话说,我们在顶部屏幕上看到的大多数虚拟分配实际上是GC堆。有一点需要注意的是,对于GC堆,它不显示为GC堆保留的内容,只显示提交的内容,即我们实际使用的内容。


    我把它们分开,这样你就可以在非.net应用程序中使用这个工具了。


    研究这样的东西的目的是为了弄清楚我们有多少碎片,我们有多少保留内存和提交内存等等。如果我们确实有很多碎片,我们应该从哪里开始寻找以减少碎片。

    原来的工具有点复杂,因为它可以读取内存转储等,并允许您放大不同的区域以获得更多的细节,但在大多数情况下,上面看到的已经足够了。

    要使用示例工具,请执行以下步骤:

    1、在windbg中打开内存转储并正确设置符号

    2、运行!address ,然后拷贝输出到一个文本文件

    3、Load sos

    4、运行!eeheap –gc ,然后拷贝输出到另一个文本文件

    5、打开工具,点击加载

  • 相关阅读:
    Django 2.0官方文档中文 渣翻 总索引(个人学习,欢迎指正)
    Deep Learning 之 最优化方法
    2018校招笔试真题汇总
    Java Swing 图形界面开发(目录)
    【目录】Spring 源码学习
    【剑指Offer学习】【所有面试题汇总】
    SSM框架学习思维导图
    关于P2P架构的网络游戏
    Styling FX Buttons with CSS
    JavaFx2.0中CSS的应用
  • 原文地址:https://www.cnblogs.com/yilang/p/13919902.html
Copyright © 2011-2022 走看看