Как определить нижнюю границу для параметра JVM Xmx
или иным образом сэкономить память без проб и ошибок? Я устанавливаю Xms
и Xmx
равными одной и той же сумме, что, как я полагаю, помогает сэкономить время выполнения. Если я установлю Xmx
на 7G, а также Xms
, он с радостью сообщит, что все это используется. Я использую следующий запрос:
Runtime.getRuntime().totalMemory()
Если я установлю меньше этого, скажем, 5 ГБ, тоже будет использовано все. Только когда я предоставлю намного меньше, скажем, 1 ГБ, будет исключение из кучи. Поскольку мое время выполнения обычно составляет 10 часов и более, мне нужно избегать процессов проб и ошибок.
.totalMemory()
, скажем, за 1 секунду, и используйте это число для установкиXmx
? - person H2ONaCl   schedule 21.09.2013