Библиотека knigago >> Компьютеры и Интернет >> Учебники и самоучители по компьютеру >> Java: устранение проблем


СЛУЧАЙНЫЙ КОММЕНТАРИЙ

# 2400, книга: Галлоуэй
автор: Луис Ламур

Роман "Галлоуэй" от Луиса Ламура погружает читателя в бурную и захватывающую эпоху Гражданской войны. Главный герой, Тим Галлоуэй, является деревенским мальчиком из Техаса, который отправляется на фронт, движимый зовом долга и патриотизмом. История разворачивается на фоне грандиозных сражений и человеческих драм. Ламур мастерски описывает ужасы войны, показывая физические и эмоциональные шрамы, которые она оставляет на своих участниках. Одновременно с этим, роман пронизан мощными...

СЛУЧАЙНАЯ КНИГА

Лауренциу Спилкэ - Java: устранение проблем

Java: устранение проблем
Книга - Java: устранение проблем.  Лауренциу Спилкэ  - прочитать полностью в библиотеке КнигаГо
Название:
Java: устранение проблем
Лауренциу Спилкэ

Жанр:

Учебники и самоучители по компьютеру, Java, Java Script

Изадано в серии:

неизвестно

Издательство:

неизвестно

Год издания:

-

ISBN:

неизвестно

Отзывы:

Комментировать

Рейтинг:

Поделись книгой с друзьями!

Помощь сайту: донат на оплату сервера

Краткое содержание книги "Java: устранение проблем"

В этой книге представлены практические методики исследования и улучшения незнакомого кода. Вы узнаете о том, как определять скрытые зависимости, выявлять главные причины критических сбоев и аварийных завершений приложений, а также интерпретировать неожиданные результаты. Осваивайте профилирование и отладку и начинайте исследовать, как в действительности работают Java-приложения.

Издание подойдет для Java-разработчиков средней квалификации.

«Наконец-то вышла книга, которая демонстрирует, как устранять проблемы и исследовать Java-приложения в производственной среде! Она определенно может спасти положение!»

Атул Шринивас Хот, SquareOne Insights

Читаем онлайн "Java: устранение проблем". [Страница - 128]

того, на любой экземпляр объекта может существовать ссылка из
стека (см. рис. E.13). Обычно ссылки из стека не приводят к утечкам памяти, поскольку (как отмечено в разделе E.2) уровень стека автоматиче-

E.4. Метапространство – локация памяти для хранения типов данных  349
ски удаляется, когда выполнение достигает конца блока кода, для которого
приложение создало этот уровень. Но в особых случаях в сочетании с другими проблемами ссылки из стека также могут стать причиной беспокойства. Допустим, что существует взаимоблокировка, препятствующая выполнению всего блока кода в целом. Соответствующий уровень в стеке не
будет удален, и, если в нем есть ссылки на объекты, это также может стать
утечкой памяти.
Может существовать ссылка на объект
из переменной, хранящейся в стеке потока.

T1

Куча

В этом случае сборщик мусора
не может удалить объект
до тех пор, пока не будет
удалена ссылка из стека.

Рис. E.13. Переменная в стеке также может ссылаться на экземпляр в куче,
который невозможно удалить, пока все ссылки на него (включая ссылки
из стека) не будут удалены

E.4. Метапространство – локация памяти
для хранения типов данных
Метапространство – это локация памяти, которую JVM использует для
хранения типов данных, необходимых для создания экземпляров, хранящихся в куче (см. рис. E.14). Приложению нужна эта информация для
обработки экземпляров объектов в куче. Иногда при определенных условиях исключение OutOfMemoryError может воздействовать и на метапространство. Если метапространство заполнено до отказа и больше нет
памяти для того, чтобы приложение сохранило новые типы данных, то
приложение генерирует исключение OutOfMemoryError, сигнализирующее
о том, что метапространство переполнено. По своему опыту отмечу, что
такие ошибки весьма редки, тем не менее я должен предупредить вас о
возможности их возникновения.

350

 Приложение E. Управление памятью в Java-приложениях
Куча может содержать несколько
экземпляров объектов нескольких типов.
Куча

Метапространство

Метаданные класса Cat
Метаданные класса Owner

Метапространство содержит информацию,
которая сообщает JVM, как интерпретировать
и создавать экземпляры, обнаруженные в куче.

Рис. E.14. Метапространство – это локация памяти, в которой
приложение хранит дескрипторы типов данных. В нем содержится
вспомогательная информация, используемая для определения
экземпляров, хранящихся в куче

Предметный указатель
Символы
_Consumer, поток 217, 225
_Hlk139972743Дамп потоков_Hlk139972743
чтение
в виде простого текста 249
_Producer, поток 217, 225
дамп потоков, пример 250
-agentlib:jdwp, параметр для подключения агента
отладчика 94
-Xms, ключ JVM, минимальный начальный размер
кучи 160
-Xmx, ключ JVM, максимальный размер кучи 160
-XX:MaxMetaspaceSize, ключ JVM, размер
метапространства 161

А
Анализ
кода 22
после аварии 26
проблемы с производительностью 33
Аспект (в Spring) 52
изменение выполнения кода 55

Б
Блокировка 216.
в многопоточной архитектуре 216
каскадная 255
потока 216
анализ 222
монитор 218

В
Взаимоблокировка 240, 333
дамп потоков 241
динамическая (активная) 334
Выборка выполняемого кода 164
Выходные данные 27

некорректные 31

Г
Гейзенбаг 29
Гейзенберга
выполнение 29
Гейзенберг, Вернер (Heisenberg, Werner) 30
Генерация 268
Голодание (зависание) 335
Граф вызовов 206

Д
Дамп кучи
использование консоли OQL для запроса 279
конфигурирование приложения 270
поиск утечек памяти 268
получение в командной строке 274
чтение 275
VisualVM 275
Дамп потоков 240
время использования ЦП 249
генерация
из командной строки 245, 247
с использованием профилировщика 243
идентификатор ID внутреннего системного
потока 249
идентификатор ID потока 249
импортирование в профилировщик 247
имя потока 249
имя состояния 249
общее время выполнения 249
описание состояния 249
приоритет потока 249
сравнение с профилированием
блокировки 251
трассировка стека 249
чтение 249
fastThread 256
с использованием инструментальных
средств 256

352

 Предметный указатель

Динамический прокси 172

К

Код
чтение 42
Журнал 108
анализ внутренней логики 43
анализ проблем в многопоточной
Командная строка
архитектуре 117
генерация дампа потоков 245
анализ проблемы 111
поиск идентификатора ID процесса 245
время выполнения конкретной инструкции 116 Куча 346
идентификация --">

Оставить комментарий:


Ваш e-mail является приватным и не будет опубликован в комментарии.