Windows Server 2003程序损失内存最小化

这是我在操作系统上遇到过的最奇怪的事情。 我运行几个程序,使用高达1 GB的内存。 但是,如果我最小化程序的RAM使用减less太多100 MB! 这意味着我失去了900 MB的RAM只是消失在哪里? 我怎样才能保持记忆的地方?

在我自己的笔记本电脑上,程序运行良好,不失内存。

此外,该程序不会后崩溃,但几天后(它不会find它在内存中需要什么)有点奇怪…

这是一个内存泄漏(它只是错过了内存)

我希望有人能帮助我!

这实际上是Windows XP / 2003的一个已知function。 我不确定Windows 7/2008 / R2是否保留了这种行为。

当顶层窗口最小化时,应用程序的工作集将被修剪
http://support.microsoft.com/kb/293215

你的程序不是“丢失”任何RAM。 操作系统使用称为“分页”的过程将您现在不需要的RAM的内容外包给硬盘 – > page file

当再次需要数据时,它位于硬盘上并再次加载到RAM中。

现在,当你最小化一个程序时,大部分资源将不再需要,因为在最小化的时候没有任何东西要显示。 因此,Windows将内容写入页面文件以释放可能被其他程序使用的内存。