Как стать автором
Обновить

Комментарии 5

Неплохая статья, написанная простым языком.
Но раз это введение, то значит планируется продолжение? Если да, то хотелось бы каких-нибудь примеров утечек памяти из реальной практики. Или как выбрать правильный GC в зависимости от того, какие у меня объекты в программе (например если приложение многопоточное, или очень много мелких маложивущих объектов, или, наоборот, объектов мало, но почти все они тяжёлые синглтоны).

Расскажите в след как именно располагаются обьекты. Вот например - как понять что за огромный массив? В коде есть массивы - но какой из них где?
Расскажите в след как именно располагаются обьекты. Вот например - как понять что за огромный массив? В коде есть массивы - но какой из них где?

Спасибо за статью, буду ждать продолжение.

Пара вопросов-замечаний:

  1. Вы пишете, что строковый пул находится в хипе. Но строковый - это лишь один из пулов. Думаю, лучше пояснить, что это касается всех пулов.

  2. На рисунке 3 области Eden, Old и S находятся над хипом, а не в нём, хотя по тексту явно сказано, что эти ребята являются "составляющими хипа". Так что картинка конфузит.

Хорошая статья для новичков, но: есть спицификация JMM - Java Memory Model. Появилась в 5й Java, описывает доступ нескольких потоков к одному объекту. Вот например хорошая статейка: https://devsday.ru/blog/details/818
Что такое Java Process Memory Model - гугл молчит. Нашел статью на русском, полагаю с таким же неверным употреблением: https://coursebook.ru/article/item/6
Поправьте название например на Java Memory Management или структура памяти, иначе сбивает с толку

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории