修改Windows 10 Universal Applications中每个应用程序的内存限制

时间:2015-11-24 11:12:04

标签: memory limit uwp

在我们的测试中,似乎memUsageLimit已根据已安装的RAM和平台进行修复。对于智能手机(主要是ARM处理器),限制是

didSet

对于常规Windows + Intel平台,我们发现该限制比物理可用RAM大约多20%,这可能是由于能够分页到磁盘。

我的问题是关于第一组设备(手机):是否可以更改给定应用程序的内存限制?我们需要处理通过oData V4接收的JSON文档,当使用NewtonSoft处理时,内存消耗非常显着:对于每MB纯JSON数据,应用程序进程以非常线性的方式增加大约9MB。

1 个答案:

答案 0 :(得分:6)

Win10 1.586确实提供了一个新的API TrySetAppMemoryUsageLimit来设置应用程序的内存限制。但是,根据内部讨论,此API仅适用于非常有限的情况,例如移动设备上的VOIP应用程序。此API的示例代码和文档尚未准备就绪。

我已经在the UWP VOIP sample上测试了这个API,它确实有效(我们需要将示例项目的目标设置为10586)。代码如下所示:

var y = MemoryManager.AppMemoryUsageLimit;
bool result = MemoryManager.TrySetAppMemoryUsageLimit(y+10000);

根据您的要求,我们会继续收集有关此功能的反馈。如果有任何强烈要求,我们将与内部团队沟通。但是,我个人的建议是:win store app对应用程序有很强的安全策略。实际上不建议APP超出内存限制。