所以我想在低内存条件下测试我的 Windows 应用程序,我发现最简单的方法是创建另一个只占用内存的应用程序(控制台应用程序)。
我创造了这个怪物:
while (true)
{
try
{
Marshal.AllocHGlobal(1024);
}
catch{}
}
但它只有 3.7 GB。然后我打开此应用程序的另一个实例,它又恢复正常。
如何防止垃圾收集器收集我的分配?
或者:如何在我的通用 Windows 应用程序上测试低内存条件?
最佳答案
您可以尝试将 GCSettings 延迟模式更改为 SustainedLowLatency,这将完全避免垃圾收集,除非系统将耗尽。
GCSettings.LatencyMode = GCLatencyMode.SustainedLowLatency;
关于c# - 我怎样才能占用内存来测试另一个应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37555250/