какой-то процент от него? (условно 90%)
не могу нагуглить это, но предположение основано на том, что программа убивается не когда памяти больше совсем нет, а немного заранее (чтобы в том числе уже начатые процессы gracefully доработали)
OOM приходит когда свободной памяти на хосте не осталось
java может выкинуть OOM по разным причинам, например, если не может создать новый тред: unable to create new native thread, или при нехватки памяти метапространства: Metaspace Но чаще всего возникает в куче и/или при превышении лимитов при сборке мусора: время GC, превышает значение, заданное флагом -XX:GCTimeLimit и объем освобожденной памяти меньше значения, заданного флагом -XX:GCHeapFreeLimit (для пяти последовательных циклов GC)
Обсуждают сегодня