有什麼辦法來限制javac的最大虛擬內存使用?在運行java時,我可以使用「-XmxAm」(其中A是免費兆字節數)運行它來限制它。有沒有像這樣的javac的東西?謝謝。Javac -Xmx限制虛擬機的使用
2
A
回答
1
我不這麼認爲。編譯器將需要構建完整的語法樹等,才能正常工作,因此限制內存使用並不是最好的想法。
12
你可以通過使用-J
選項給javac(以及帶有自己的本機啓動器的大多數java程序)提供相同的運行時選項。按照慣例,所有這些選項都直接傳遞給運行系統。所以,你的情況,你可以調用
javac -J-Xmx5m -J-Xmx4m <source>
以很少的內存運行javac。當然,正如reseter所言,這種方法的用途有限,因爲javac可能真的需要一定量的內存來編譯。但是,在真正的大項目中,您可能希望以這種方式增加內存。
0
對於unix shell,可以使用ulimit命令(http://ss64.com/bash/ulimit.html)。
bash -c ' ulimit -v 1048576; javac PrettyWoman.java '.
-v option
是對javac進程的虛擬內存限制。
但是,它需要大量的虛擬內存,否則會出現以下錯誤,VM的初始化過程中出現
「錯誤。無法爲對象堆預留足夠的空間用於 。無法創建Java虛擬機「
注:Java方法 - Thread.sleep代碼不會的ulimit時間限制(實時VS CPU時間)計算在內,因此,如果您使用的ulimit與Java文件一起。 ,java文件可以保持睡眠,因爲它喜歡。
相關問題
- 1. 增加-Xmx時出現「無法創建Java虛擬機」-Xmx
- 2. Azure虛擬機CPU內核限制
- 3. azure虛擬機出站請求限制
- 4. Java虛擬機「最大堆大小」與通用JVM參數Xmx
- 5. 變化的java -Xmx後的虛擬機已經開始
- 6. 使用Puppet獲取虛擬機中的主機虛擬機
- 7. 如何限制Apache模塊(處理程序)到虛擬主機(虛擬主機)
- 8. 製作Windows上使用虛擬機
- 9. 使用Python控制Hyper-V虛擬機
- 10. 使用Python腳本控制虛擬機
- 11. Azure上的Linux虛擬機 - 如何應用IP限制
- 12. 虛擬主機內的虛擬主機
- 13. 虛擬機中的虛擬機 - 網絡
- 14. 使用Apache虛擬主機
- 15. Apache:使用虛擬主機
- 16. 使用另一臺linux虛擬機訪問虛擬linux機器
- 17. 使用mod_rewrite模擬SSL虛擬主機?
- 18. 使用虛擬單核虛擬化guest虛擬機上的所有cpu核心
- 19. 是-Xmx是一個硬限制?
- 20. 將IIS虛擬目錄限制爲特定的HTTP主機頭?
- 21. 部署在Azure虛擬機上時的SQL Server限制
- 22. SVN主機vs使用虛擬主機
- 23. 在使用xen創建的虛擬化環境中,ping到主虛擬機到guest虛擬機主機失敗
- 24. Azure虛擬機中的Active Directory - 僅用於虛擬機身份?
- 25. 檢測虛擬機複製/複製
- 26. 將虛擬機的副本複製到其他虛擬機的天藍
- 27. 使用XAMP和APPSERVER的虛擬主機
- 28. 在遊戲中使用的虛擬機