我正在尝试复现一个看起来会在用户使用大量RAM时出现的bug。有什么最好的方法可以限制计算机可用的RAM,或者将大部分RAM填满?我希望在不物理地移除内存和运行一堆任意的、占用大量内存的程序(如Photoshop、Quake等)的情况下进行。
我正在尝试复现一个看起来会在用户使用大量RAM时出现的bug。有什么最好的方法可以限制计算机可用的RAM,或者将大部分RAM填满?我希望在不物理地移除内存和运行一堆任意的、占用大量内存的程序(如Photoshop、Quake等)的情况下进行。
我从一道类似的问题中复制了我的回答:
如果您正在测试本地/非托管/C++应用程序,可以使用AppVerifier及其低资源模拟设置,该设置将使用故障注入来模拟内存分配错误(以及许多其他细微问题)。它还非常有用,可以找到导致应用程序崩溃的许多其他微妙问题。
您还可以使用consume.exe,该工具是Microsoft Windows SDK for Windows 7和.NET Framework 3.5 Service Pack 1的一部分,它可以轻松使用大量内存、磁盘空间、CPU时间、页面文件或内核池,并查看您的应用程序如何处理可用资源不足的情况。(是否崩溃?性能受到了什么影响等)