原理:利用兩個 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運行時內存分配的具體設置。