У меня есть приложение для работы с java для поиска файлов, и оно обычно достигает предела кучи по умолчанию довольно скоро. У меня не будет доступа ко всем системам, в которые он будет установлен, поэтому я хочу увеличить размер кучи JVM в самом приложении. Может кто-нибудь помочь мне, как я могу это сделать программно в моем приложенииКак увеличить размер кучи java программно
ответ
Посмотреть это сообщение об увеличении размера Java кучи:
increase the java heap size permanently?
Возможно также вы можете очистить какую-то часть вашего кода, чтобы уменьшить использование памяти.
С наилучшими пожеланиями
Там нет такого стандарта API, чтобы сделать так.
Я предлагаю вам использовать Java Web Start для вызова вашего приложения (может использоваться для локальных приложений в последнем Sun Java 6), поскольку он позволяет вам указывать значения для этого.
У вас может быть три или четыре ссылки, каждая из которых указывает на одни и те же файлы, но с размерами «Крошечный», «Средний», «Большой», «Гигантский».
Посмотрите на что-то вроде launch4j и рассмотрите возможность развертывания исполняемых файлов, где вы можете контролировать лимит, когда кто-то начинает запуск вашего приложения.
Вы не сможете произвести программный код.
Для настольных приложений я предлагаю предоставить пусковую установку, которая затем может указать желаемый размер памяти. В дополнение к настройке вашей JVM вы также можете предоставить значок, ассоциации файлов и т. Д.
См. Это SO question для вариантов развертывания.
Установка -Xmx на один концерт не означает, что JVM будет выделять столько памяти при запуске. JVM будет выделять только -Xms (плюс накладные расходы), пока не потребуется больше места для кучи. Вам нужно защитить своих пользователей от измельчения виртуальной памяти или отказавшего выделения памяти из ОС? Если нет, просто установите Xmx в большое значение. Обратите внимание, что Windows 32bit JVM часто игнорируют настройки Xmx, превышающие 1,2Gig, поэтому лучше не запрашивать больше, чем концерт или так, чтобы быть в безопасности.
32-разрядные JVM не будут игнорировать большие максимальные размеры кучи, вместо этого они не запустится. Просто установите -mx1200m или аналогичный. (-mx работает так же хорошо, как -Xmx) –
- 1. Как увеличить размер памяти кучи программно
- 2. Как увеличить размер кучи
- 3. Как увеличить размер кучи в java?
- 4. увеличить размер кучи java навсегда?
- 5. Как увеличить размер кучи .NET?
- 6. Как увеличить размер кучи в Java ME?
- 7. Как увеличить размер кучи java в netbeans?
- 8. Как увеличить размер кучи java в Hadoop
- 9. Как увеличить размер кучи моего приложения Java?
- 10. Как увеличить максимальный размер кучи Java 6?
- 11. увеличить размер кучи java навсегда после перезагрузки?
- 12. Ошибка при попытке увеличить размер кучи java
- 13. Увеличить размер кучи в java для weka
- 14. Как увеличить размер кучи Java в aws Lambda?
- 15. Как увеличить размер кучи для Eclipse?
- 16. Как увеличить размер кучи приложения для Android?
- 17. программно устанавливая максимальный размер кучи java
- 18. Почему я не могу увеличить размер кучи?
- 19. Как увеличить размер кучи приложения в Eclipse?
- 20. Как увеличить размер кучи приложения для Android?
- 21. увеличить размер textArea программно
- 22. C# Увеличить размер кучи - Возможно ли это
- 23. Проблемы с java-кучей пространства, как увеличить размер кучи?
- 24. Java: Как увеличить размер кучи с помощью текстовой панели
- 25. Как установить (увеличить) размер кучи java в Octave 4.0.0?
- 26. Как увеличить размер кучи Java непосредственно в Matlab?
- 27. Увеличить размер кучи для sqlworkbench/J
- 28. Hibernate - OutOfMemoryError - размер кучи java
- 29. Cordova/PhoneGap - Увеличить размер кучи демона OSX
- 30. Размер кучи Java Размер памяти
Почему бы вам не выбрать добавочный стартовый скрипт (bat или sh) с определенными начальными параметрами для jvm (например, Xmx) и развернуть его вместе с самим приложением. –
Какой смысл устанавливать лимит, если какое-либо приложение может просто поднять его по своему усмотрению? –
вы не можете программным образом изменить ограничения памяти в запущенном приложении –