Что такое строковая локальная память в Java? - PullRequest
0 голосов
/ 25 мая 2010

В JVM память разделена на область метода, стек, кучу, температуру и реестр. Что такое строковая локальная память? Это существует? Если да, то когда он будет выделен или назначен? Правильное использование этого?

Спасибо

Ответы [ 4 ]

5 голосов
/ 25 мая 2010

Я не уверен, что вы подразумеваете под термином «Строковая локальная память», но в VM есть такая вещь, как пул литералов String, при котором литералы String объединяются (и используются повторно). См. Раздел 3.10.5 в спецификации языка Java:

http://java.sun.com/docs/books/jls/second_edition/html/lexical.doc.html#100960

Другие вещи, о которых вы упомянули выше, подробно описаны в разделе Области данных времени выполнения спецификации виртуальной машины:

http://java.sun.com/docs/books/jvms/second_edition/html/Overview.doc.html#1732

Надеюсь, это объясняет немного больше (с правильной терминологией).

3 голосов
/ 27 мая 2010

В JVM память делится на Область метода, стек, куча, температура и Реестр.

Нет, это не так. Он разбит на стеки, кучу, область метода и пул констант. См. Спецификация JVM

.

Что такое строковая локальная память?

Понятия не имею. Что такое «Temp» и «Registry»?

Где бы вы ни получили это, оно ошибочно.

3 голосов
/ 25 мая 2010

Я никогда не слышал об этом раньше, и поиск Google не находит упоминаний об этом. Не могли бы вы рассказать нам, где вы слышали о «строковой локальной памяти» для Java? Я не верю, что это стандартный термин.

(Я не совсем уверен, что вы подразумеваете под "временным" или "реестром" в отношении JVM.)

2 голосов
/ 25 мая 2010

Никогда не слышал о "строке локальной памяти". Я слышал о «нить локальной» памяти, хотя. Вот где каждый поток, который обращается к данному объекту ThreadLocal, получает различное значение, полностью зависящее от того, какой это поток. Мне еще нужно его использовать - кажется слишком волшебным, если вы спросите меня.

Подробнее см. http://java.sun.com/j2se/1.5.0/docs/api/java/lang/ThreadLocal.html.

Я упоминаю об этом, потому что «строка» и «нить» означают довольно похожие вещи в контексте «длинных, гибких, очень очень тонких кусочков материала», и перевод туда и обратно может объяснить путаницу. *

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...