Модель внутренней памяти Java для стеков потоков - PullRequest
0 голосов
/ 25 февраля 2019

Я читал статью о Модель внутренней памяти Java .Есть один момент, о котором я хочу спросить:

Каждый поток, работающий на виртуальной машине Java, имеет свой собственный стек потоков.Стек потока содержит информацию о том, какие методы вызвал поток для достижения текущей точки выполнения.

Почему каждый поток должен сохранять информацию о том, какие методы были выполнены (!)?Если это связано с переключением контекста, то (если я не ошибаюсь) поток должен сохранить информацию о методе, который в данный момент выполняется.Какая фактическая потребность в сохранении информации о уже выполненном методе?

Ответы [ 2 ]

0 голосов
/ 25 февраля 2019

Я думаю, что перефразирование этого параграфа делает его более понятным и понятным:

Каждый поток, работающий на виртуальной машине Java , выделяет некоторую память для своего стека вызовов .Стек вызовов содержит информацию о том, какие методы вызвал поток для достижения текущей точки выполнения.

0 голосов
/ 25 февраля 2019

Это относится к текущим активным методам.Обратите внимание, что в потоке одновременно может быть несколько методов (A вызывает B, вызывает C, ...).Стек не содержит информацию о методах, которые уже завершены.

...