关于这个内存占用情况,其实很难准确的计算。特别是在运行过程中,内存占用有时会变得比较大。而当最小化窗口时,内存占用又会急剧下降--这里说的,是从任务管理器里看到的情况。其实,这都是很正常的。
内存的占用,其实反应的是程序的活动情况。一般来说,在程序完全不工作(或者系统内存不足)的时候,操作系统会把其占用的内存进行释放(甚至可以变成零占用),这就是为什么最小化的时候程序内存占用急剧下降的缘故—不是我们释放了内存,而是操作系统自动释放(交换)出去了,这样就有更多的内存给其它程序使用。但是,一旦最大化了,程序又开始工作了,那么释放出去的内存又要重新分配回来,所以内存占用又继续上升了。
所以,某一个瞬间占用多少内存其实都不重要(因为有可能这时候它在做很复杂的操作,占用很多内存是很正常的。当然,操作完成后,内存占用应该下降。不过这不重要,即便你不放,系统在需要时也会强制放掉)。所以,问题的关键是不进行操作的时候,内存会不会在不断的增长。如果是,则表明程序一直在活动,一直在占用CPU,这才是最关键的(CPU的占用才是系统变慢的主要原因)。我们需要查出来的,应该是这些一直在进行的操作是什么,是不是应该进行的,这才是关键。很有可能,内存的占用并不增加,而CPU占用很厉害,系统性能一样严重下降。