Как заставить операционную систему дать Java больше памяти? - PullRequest
3 голосов
/ 14 мая 2010

У меня проблема с файлами java jar и памятью.

Я использую netbeans 6.7 для разработки приложения, и этому приложению требуется больше памяти для запуска, поскольку оно преобразует другие файлы. Всякий раз, когда это приложение преобразует файл размером 6-10 МБ, оно будет зависать. Поэтому я установил параметры VM NetBeans: -Xms32m -Xmx256m, и приложение может без проблем конвертировать 6-10 МБ файлов.

Я очищаю и собираю проект, чтобы он мог создать jar-файл моего приложения. Я запускаю флягу на своем компьютере и использую jconsole для мониторинга памяти. Максимальная память, используемая приложением, показывает 256 МБ. Но всякий раз, когда я перемещаю его на некоторые другие компьютеры, он показывает 65-66 МБ на jconsole, и приложение конвертируется при преобразовании файлов 6-10 МБ. Поэтому мне нужно использовать командную строку: java -jar -Xmx256m myjar.jar, чтобы выполнить jar с максимальной памятью

Почему это может произойти, на моем компьютере максимальная память показывает 256 МБ, а на другом компьютере - 65-66 МБ? Могу ли я заставить другой компьютер увеличить максимальную память для моего приложения?

Спасибо за ваш ответ. Я извиняюсь за мой неадекватный английский. Если вы все поймете, что мой вопрос трудно понять, пожалуйста, дайте мне знать.

С наилучшими пожеланиями

Denny

ps: на моем компьютере, на котором я разрабатывал приложение, есть оперативная память 2 ГБ, на других протестированных мной компьютерах оперативная память 1-2 ГБ.

Ответы [ 4 ]

5 голосов
/ 14 мая 2010

Вы ответили на свой вопрос. Приложение должно быть запущено с опцией -Xmx.

2 голосов
/ 14 мая 2010

Я нашел альтернативу, мы можем использовать: установить _JAVA_OPTIONS = -Xms64m -Xmx128m в командной строке. Это делает: java -Xms64m -Xmx128m становится размером кучи памяти по умолчанию. У меня это здесь .

Таким образом, вы получите удовлетворенный результат для меня. Но если у вас есть лучший способ, пожалуйста, не стесняйтесь опубликовать его. В любом случае, спасибо за ваши ответы.

0 голосов
/ 14 мая 2010

Настройте параметры в свойствах «Запустить приложение», указав объем памяти, ожидаемый в IDE NetBeans.

0 голосов
/ 14 мая 2010

IIRC, клиентская виртуальная машина по умолчанию использовала 64 МБ кучи. Вы должны использовать -Xmx или, возможно, сгенерировать пусковую установку для своей банки .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...