Подтвердить что ты не робот

Модель памяти Java

Модель памяти Java - это огромная тема в Java. Я не ожидаю, что кто-нибудь ответит или объяснит модель памяти Java в Stack-overflow. Но можете ли вы поделиться ссылками на хорошие ссылки, которые объясняют это. Это поможет, если ссылки не слишком технические, но ориентированы на промежуточных Java-программистов.

В основном я ищу ссылки на эти темы:

  • Сбор мусора: используемые алгоритмы наряду с некоторым описанием.
  • Обсуждения о стеке Java, Heap.
  • Обсуждения о том, где классы загруженной области метода.

P.S. Даже книги будут делать.

Спасибо заранее.

4b9b3361

Ответ 1

re 1: посмотрите этот документ: http://www.oracle.com/technetwork/java/javase/memorymanagement-whitepaper-150215.pdf

re 2: это описано в Спецификации JVM, глава 3: http://java.sun.com/docs/books/jvms/second_edition/html/Overview.doc.html

re 3: не уверен, что вы просите, но похоже, что в главе 5 спецификации VM есть то, что вы ищете: http://java.sun.com/docs/books/jvms/second_edition/html/ConstantPool.doc.html

Вероятно, вы хотите прочитать всю спецификацию виртуальной машины: http://java.sun.com/docs/books/jvms/second_edition/html/VMSpecTOC.doc.html

Ответ 2

Для GC мне нравится блог Jon Masamitsu, я думаю, что он отлично описывает различные аспекты этого понятным образом.

В учебном пособии SCJP есть несколько основных обсуждений стека против кучи, которые должны быть очень доступны для людей среднего уровня.