Мне стало любопытно узнать о внутренней части VisualVM / JConsole.
Почему VisualVM может выполнять следующие действия.
- Обнаружение всех локально запущенных процессов Java (я полагаю, некоторые из них зависят от операционной системы)API?)
- Мониторинг процессора / кучи / классов / потоков, хотя я явно не запускал MBeanServer.Ранее я думал, что он обращается к платформе MBeans.
- Профилирование (При использовании TI JVM как получается, что он перехватывает agentlib во время выполнения процесса Java?)
Конечно, я мог прочитатькод, но лень;)