繁体   English   中英

获得Silverlight浏览器应用程序内存使用的最准确方法

[英]Most Accurate Way to Get Memory Usage for Silverlight Browser Application

目前我正在追踪Silverlight 4应用程序中的内存泄漏问题。 我可以看到iexplorer.exe使用的内存使用任务管理器逐渐增加。

但是,我在Silverlight代码中寻找一种方法来告诉应用程序当前在IE Process中使用了多少内存。 我尝试过GC.GetTotalMemory,但它并不代表iexplorer的实际内存使用情况。

我有用于跟踪内存泄漏本身的开发人员工具,所以我不是在寻找它,而是在我的Silverlight代码中使用一种方法来获取总IE内存使用量,或者至少更接近地表示Silverlight实际使用的内容而不是垃圾收集者认为正在使用什么。

GC分配的内存是对SL应用程序使用的内存动态部分的良好估计。 否则,不清楚您需要哪些其他类型的内存使用。

如果您需要其他一些数据,请考虑首先使用VaDump( http://msdn.microsoft.com/en-us/magazine/dd882521.aspx链接从使用VADump跟踪内存使用情况 - OpenProcess失败c0000034 )。 当你弄清楚你感兴趣的内存部分/类型时,它应该相对容易获得这些信息(你可能需要通过本机调用来收集它,但可能所有内容都可能是PInvoke)。

更新:我认为您所寻找的所有信息都是通过性能计数器提供的 - 使用示例 - http://msdn.microsoft.com/en-us/library/system.diagnostics.performancecounter.countername.aspx (但我不知道)我认为你可以从SL获得它。

试试visual studio profiler

https://blogs.msdn.com/b/profiler/archive/2010/04/26/vs2010-silverlight-4-profiling.aspx

“对于.NET内存分析,请在步骤1中使用”VSPerfClrEnv / samplegc“或”VSPerfClrEnv / samplegclife“来获取分配分析或分配和生命周期分析。”

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM