在任务管理器和内存分析器工具中分析内存使用情况 [英] Memory usage profiled in task manager and memory profiler tools

查看:38
本文介绍了在任务管理器和内存分析器工具中分析内存使用情况的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

.Net winform 应用程序.

.Net winform application.

我使用了几种内存分析器,包括 CLR 分析器、DotTrace 内存、Net 内存分析器.工具给出的结果是分配的内存为38-40M.但是我发现任务管理器中的工作集是300-400M(几乎与峰值工作集或内存或提交大小相同.

I used several memory profiler, including CLR profiler, DotTrace memory, Net memory profiler. The tools gave the result that the allocated memory was 38-40M. But I found that working set was 300-400M in task manager(almost the same size as Peak working set or memory or commit size.

那么这两个结果有什么区别呢?结果意味着什么?

So what's the difference between the two results? What do the results mean?

推荐答案

那些工具可能会显示私有字节或托管堆大小,这不包括,例如内存映射文件,支持页面文件或支持磁盘文件,您的应用程序可能是 r/w ing大映射文件,所以工作集看起来很大,或者你的应用程序加载了太多的 dll/程序集.VMMAP(来自 sysinternals)可以清楚地了解您应用中的内存类型/大小.

those tools may show you private bytes or managed heap size, this does not include, e.g. memory mapped file, either page file backed or disk file backed, your app may be r/w ing big mapped file, so working set looks big, or your app just load too many dll/assemblies. VMMAP (from sysinternals) can give a clear overview of memory type/size in your app.

这篇关于在任务管理器和内存分析器工具中分析内存使用情况的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆