Я хотел бы ограничить максимальный размер кучи для приложения Java, но, похоже, это не работает. Я запускаю приложение из пакета jar через bat в Windows. Содержимое летучей мыши:
@Echo off
set CLASSPATH=.
java -Xmx32m -classpath %CLASSPATH% -jar MyApplication.jar
Это должно ограничить максимальный размер кучи 32 мегабайтами. Однако, когда я делаю что-то с потреблением памяти с приложением, диспетчер задач Windows показывает, что потребление памяти составляет как минимум около 70 мегабайт ... Я даже пробовал с -Xmx2m, но это не имело никакого значения.
Итак, я не совсем уверен, в чем проблема. Конечно, в использовании памяти содержится стек и т. Д., Но память, используемая программой, должна быть в основном кучей...
Версия Java кажется 1.6.0_14.
Для тех, кому интересно, что мне нужно, я пытаюсь увидеть, как мое приложение будет вести себя с определенными функциями, когда ему не хватит места в куче.
РЕДАКТИРОВАТЬ: Хм.. Я был удивлен, что использование кучи было ограничено 32M на самом деле при мониторинге с помощью JConsole. Надо больше памяти использовать...
Спасибо за идеи, Токо