Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > GC overhead limit


Автор: yuliada 13.7.2009, 19:53
Есть программа, которая нормально работает в Netbeans, но не хочет запускаться в виде jar из коммандной строки. Падает с OutOfMemoryError: GC overhead limit exceeded. Прочитала, что от этого можно избавиться, запуская этот jar файл с -XX:-UseGCOverheadLimit, попробовала запустить вот так:
Код

java -jar someJar.jar -XX:-UseGCOverheadLimit -Xmx2000M -Xms2000M

Почему-то не помогает. Я ее запускаю неправильно? У кого-нибудь была такая же проблема?

Автор: COVD 13.7.2009, 23:44
Может, дело в том, что на windows нельзя выделить больше 1500M памяти, а вы требуете 2000M.  Уточните, какой лимит памяти в операционной системе, где запускаете приложение. И сколько приложению реально выделяется на старте.

Автор: LSD 14.7.2009, 18:04
Как минимум -jar someJar.jar должно идти последним, т.к. все что после считается уже аргументами приложения, а не JVM. Ну и плюс то, что сказал COVD, по поводу ограничения на размер кучи (только это общее ограничение для 32-х битных JVM, не только под Windows).

Автор: yuliada 15.7.2009, 10:44
JVM 64-битная, так что с памятью все так и должно быть (программа много данных загружает для обработки). Попробую сейчас переставить аргументы

Автор: yuliada 15.7.2009, 12:57
Спасибо, работает

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)