Mac的内存管理

Mac下的资源管理和Windows的资源管理是完全不同的两种概念,Windows认为一个程序占用太多的资源纯属浪费,而Mac认为,资源放在那里白白不用才是浪费。  

所以在Windows下,当一个程序退出时,它所占用的内存会被立即释放,留给后来的程序使用,也就是说你走了你的位置马上会被取代,即便你刚出去再回来也会发现你得重新找位置;而Mac不同,在Mac下当一个程序退出时,系统并不会立刻释放程序所占的内存,而是将它标记为“非活跃”(“活动监视器”中的“蓝色”内存),当一个程序启动时,Mac会优先分配可用资源(“活动监视器”中的“绿色”内存),只有当可用资源不够用时,系统才会从“非活跃”中收回一部分资源供程序使用,所以在Mac下,你总会看见绿色很少,这是因为Mac优先占用绿色。

不过不用担心,当程序退出时,占用的“非活跃”内存很小(仅保留程序启动时所需的内存)。这样做的好处是,一方面既保证程序有足够的资源可用,另一方面又保证曾经启动过的程序能被快速启动,互不影响。也就是说在Windows下,人走茶凉,但在Mac下,人走了,茶还可以再热一会儿,万一你又回来怎么办。  

总之,在资源分配方面,Windows属于顺序占用式,优先使用别人上次用过的内存,而Mac则是全新占用式,优先分配可用资源,就好比是有空座的时候你先坐,没空座的时候大家挤一挤;而在资源回收方面,Windows认为占着茅坑不拉屎是浪费资源,而Mac认为当茅坑有的是时,你可以先占着,以防止你随时拉肚子,只有当茅坑不够时,你才需要释放,这也就是为什么你在Mac下退出一个程序,再启动时会发现要快一些的缘故。因为它的内存并没有完全释放,而是保留了启动所需要的一部分内存。这就是它们管理的不同。  

如果你想释放非活跃内存,可以在“终端”中输入Purge,按return,即可释放部分非活跃内存。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。