我們開始在我們的項目中大量使用GWT,并且GWT編譯器的性能變得越來越令人討厭。我們將開始改變工作方式以緩解該問題,其中包括更加強調托管模式瀏覽器,這使運行GWT編譯器的需求推遲到以后,但這會帶來自身的風險,特別是在直到比我們想要的要晚得多的時候,才真正的瀏覽器發現問題。理想情況下,我們希望使GWT編譯器本身更快-一分鐘的編譯相當小的應用程序耗費了小費。但是,如果使用的是相當幼稚的方式,我們將使用編譯方式,因此我希望我們可以快速輕松地獲得收益。我們目前正在從ant Ant目標中調用com.google.gwt.dev.Compiler作為Java應用程序,最大堆內存為256m,并且有大量堆棧空間。Ant會使用fork = true和最新的Java 6 JRE啟動該編譯器,以嘗試利用Java6的改進性能。我們將主控制器類與應用程序類路徑一起傳遞給編譯器,然后關閉。我們還能做什么以提高速度?我們可以給它更多的信息,以便花費更少的時間來發現要做的事情嗎?我知道我們只能告訴它僅針對一個瀏覽器進行編譯,但是我們需要進行多瀏覽器測試,因此這并不實際。此時歡迎所有建議。
3 回答

慕姐8265434
TA貢獻1813條經驗 獲得超2個贊
如果使用-localWorkers標志運行GWT編譯器,則編譯器將并行編譯多個置換。這使您可以使用多核計算機的所有內核,例如-localWorkers 2將告訴編譯器并行編譯兩個排列。您不會得到數量級的差異(并非編譯器中的所有內容都是可并行化的),但是如果您要編譯多個置換,這仍然是明顯的加速。
如果您愿意使用GWT的主干版本,則可以對任何瀏覽器使用托管模式(進程外托管模式),從而可以緩解當前大多數托管模式問題。這似乎是GWT的發展方向-始終以托管模式進行開發,因為編譯不太可能獲得更快的幅度。
添加回答
舉報
0/150
提交
取消