转载http://blog.csdn.net/a9529lty/article/details/5487323
原理:利用两个 Windows API - SetProcessWorkingSetSize 与 VirtualLock (适用于 Windows 平台)。
切换时果然快很多。
官方建议最小值设定在 100 MB,最大值 250 MB 左右。
-----------------------------------------------------------
下载地址:
http://suif.stanford.edu/pub/keepresident/keepresident-0.2.zip
安装方法:
解压到Eclipse安装目录,它实际上会增加一个plugins目录下的子目录,然后重启Eclipse,对于3.1版本的Eclipse,建议使用-clean命令行参数启动,这样会明确告诉Eclipse刷新
插件等的配置。
使用:
在Eclipse 工作台的Windows->Preferences中会看到新增的KeepResident选项页,在这里我们可以配置三个东东,最小工作集大小、最大工作集大小、VirtualLock,分别指定希望Windows分配给Eclipse的最小物理内存、最大物理内存和是否强制保持这部分内存。具体设置因人而异,可以给大家参考我个人的配置:我的环境是Windows XP SP2,256MB内存,三个选项分别是:80MB、128MB、选中。最使用情况来看,运行很顺畅。
简单原理:
首先,我们知道,Windows的内存实际上是物理内存+虚拟内存,必要的时候它会把应用程序占用的物理内存page到硬盘;其次,对于普通的应用程序 Windows默认只会分配少量物理内存,并且这对需要相对大量内存的Eclipse来说是不能接受的;再次,一旦Eclipse窗口最小化, Windows默认就会认为它暂时不再被使用,于是会将它使用的物理内存挪出来给其他的进程使用,这样我们最小化和再次打开就会感到严重的延迟。 KeepResident非常小,其实就是调用Windows的SetProcessWorkingSetSize()和VirtualLock()这两个API来实现指定Eclipse运行时内存分配的具体设置。