Как бороться с ошибкой «java.lang.OutOfMemoryError: пространство кучи Java»? ⇐ JAVA
Как бороться с ошибкой «java.lang.OutOfMemoryError: пространство кучи Java»?
Я пишу клиентское приложение Swing (графический дизайнер шрифтов) на Java 5. Недавно я столкнулся с ошибкой java.lang.OutOfMemoryError: Java heap space, потому что я не консервативен в использовании памяти. Пользователь может открывать неограниченное количество файлов, а программа сохраняет открытые объекты в памяти. После быстрого исследования я обнаружил, что Эргономика в виртуальной машине Java 5.0 и другие говорят, что на машине с Windows максимальный размер кучи JVM по умолчанию составляет 64 МБ.
Учитывая эту ситуацию , как мне справиться с этим ограничением?
Я мог бы увеличить максимальный размер кучи, используя параметр командной строки, чтобы java, но для этого потребуется выяснить доступную оперативную память и написать какую-нибудь запускающую программу или скрипт. Кроме того, увеличение до некоторого конечного максимума не окончательно избавит от проблемы.
Я мог бы переписать некоторые из мой код для частого сохранения объектов в файловой системе (использование базы данных — то же самое), чтобы освободить память. Это могло бы сработать, но, вероятно, это тоже большая работа.
Если бы вы могли указать мне на детали приведенных выше идей или некоторые альтернативы, такие как автоматическая виртуальная память, расширение кучи изменять динамический размер, это будет здорово.
Источник: https://stackoverflow.com/questions/373 ... pace-error
Я пишу клиентское приложение Swing (графический дизайнер шрифтов) на Java 5. Недавно я столкнулся с ошибкой java.lang.OutOfMemoryError: Java heap space, потому что я не консервативен в использовании памяти. Пользователь может открывать неограниченное количество файлов, а программа сохраняет открытые объекты в памяти. После быстрого исследования я обнаружил, что Эргономика в виртуальной машине Java 5.0 и другие говорят, что на машине с Windows максимальный размер кучи JVM по умолчанию составляет 64 МБ.
Учитывая эту ситуацию , как мне справиться с этим ограничением?
Я мог бы увеличить максимальный размер кучи, используя параметр командной строки, чтобы java, но для этого потребуется выяснить доступную оперативную память и написать какую-нибудь запускающую программу или скрипт. Кроме того, увеличение до некоторого конечного максимума не окончательно избавит от проблемы.
Я мог бы переписать некоторые из мой код для частого сохранения объектов в файловой системе (использование базы данных — то же самое), чтобы освободить память. Это могло бы сработать, но, вероятно, это тоже большая работа.
Если бы вы могли указать мне на детали приведенных выше идей или некоторые альтернативы, такие как автоматическая виртуальная память, расширение кучи изменять динамический размер, это будет здорово.
Источник: https://stackoverflow.com/questions/373 ... pace-error
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как бороться с ошибкой «java.lang.OutOfMemoryError: пространство кучи Java»?
Anonymous » » в форуме JAVA - 0 Ответы
- 15 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Ошибка памяти виртуальной машины Java, java.lang.OutOfMemoryError: пространство кучи Java
Anonymous » » в форуме JAVA - 0 Ответы
- 13 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как я могу преодолеть этот контекст «java.lang.OutOfMemoryError: пространство кучи Java»?
Anonymous » » в форуме JAVA - 0 Ответы
- 11 Просмотры
-
Последнее сообщение Anonymous
-