WP8 DeviceStatus.Application Current MemoryUsage属性是否考虑了本机分配?

时间:2013-09-16 11:35:14

标签: c# memory-management windows-phone-8 native-code

我在文档中找不到这个,所以我想知道是否有人对此有任何经验?

我需要知道应用程序正在消耗的所有内存,以及我在引用的本机项目中分配的内容以及托管应用程序中管理的内容的总和。

我正在查看的文档可在以下网址找到:http://msdn.microsoft.com/en-us/library/windowsphone/develop/microsoft.phone.info.devicestatus(v=vs.105).aspx

奖励:虽然我们在这里,但是我可以找出为应用程序的每个部分分配了多少内存(本机与托管)?

1 个答案:

答案 0 :(得分:2)

是的,DeviceStatus.ApplicationCurrentMemoryUsage确实包含了应用程序正在使用的总内存:本机和托管。

您可以问GC.GetTotalMemory 认为使用了多少管理内存,但我发现这不可靠。

根据MSDN:

  

检索当前认为要分配的字节数。

<强>更新

有一个简短的示例,说明如何确定DeviceStatus.ApplicationMemoryUsageLimit Property与内存限制的接近程度,但它没有明确地调出不同类型的内存。我怀疑你现在要接近MSDN上的参考文件了。