我在文档中找不到指定的内容,所以我想知道是否有人对此有任何经验?

我需要了解应用程序正在使用的所有内存,因此需要了解我正在引用的本机项目中分配的内容以及托管应用程序中所管理的内容的总和。

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

奖励:当我们这样做时,我是否可以找出为应用程序的每个部分(本机还是托管)分配了多少内存?

最佳答案

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

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

根据MSDN:


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


更新:

有一个简短的示例,说明如何确定您与DeviceStatus.ApplicationMemoryUsageLimit Property处的内存限制有多接近,但是它没有明确调用不同类型的内存。我怀疑这与您现在就可以在MSDN上获得参考的距离差不多。

10-08 08:21