Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.06.2009, 02:33   #1
Безбашик
 
Регистрация: 09.05.2009
Сообщений: 5
По умолчанию Out of Memory ERROR

Здравствуйте! Я написал программу которая выводит все корни логического уравнения( вот даже ссылка на предыдущую тему http://www.programmersforum.ru/showthread.php?t=48822) ну и столкнулся с проблемой нехватки памяти, а именно если переменных в уравнении больше 12 то программа падает с ошибкой heap space.... Увеличивал размер хэпа к сожалению это не помогло =( Препод ничего не понимает в программировании так как ведёт дискретку и сказал мол пользуйся операцией склеивания мол 10100 и 10101 можно записать как 1010Х только какой смысл этого, если чтобы заняться склейкой мне нужно получить все результаты а потом их клеить. Так вот может кто-нибудь знает, что делать в этой ситуации так как если бы склейку сделать вовремя другого процесса каким то волшебным образом это бы здорово спасло ведь препод поставил задачу вывести хотя бы один класс корней тоесть как я и говорил к примеру 1010Х.
Безбашик вне форума Ответить с цитированием
Старый 02.06.2009, 19:11   #2
hitori
Пользователь
 
Аватар для hitori
 
Регистрация: 09.05.2009
Сообщений: 11
По умолчанию

По счет старой темы с программой, не проще ли было использовать стек? Польская форма записи приспособлена именно для этого... во всяком случае не пришлось бы преобразовывать, соответственно и длина кода и потребление ресурсов были бы значительно меньше.

Могу предположить, что корни вычисляешь методом перебора значений?
hitori вне форума Ответить с цитированием
Старый 10.06.2009, 11:37   #3
Kriks
Новичок
Джуниор
 
Регистрация: 10.06.2009
Сообщений: 14
По умолчанию

Вам надо выделить больше памяти на вашу программу. Вот что посоветую:
уменьшить количество долгоживущих объектов, использовать слабые ссылки (чтобы объекты можно было собирать сборщиком - погуглите по теме weak reference), нужно закрывать обязательно все ресурсы типа подключений к базам данных. Никогда не вызывайте сборщик мусора руками. Посмотрите на функции начинающиеся на -xms...

Также можно воспользоваться анализаторами хипа - JMap, JHat
Kriks вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main Debug/main.exe : fatal error LNK11 prefak Win Api 0 19.04.2009 16:51
Выдаёт ошибку: acos DOMAIN error,полсе нажатия окей,ещё одну ошибку pow OWERFLAW ERROR prikolist Общие вопросы C/C++ 4 10.04.2009 20:27
Подскажите! Run-time error '7' Out of memory evgenjp Свободное общение 3 01.10.2008 09:16
[Error] RLINK32: Out of memory! - что это и как лечить? RoamingFire Общие вопросы Delphi 2 11.02.2008 08:32