java - oql - Diferença entre amostragem e criação de perfil em jVisualvm



visualvm oql (1)

Sampling significa tirar muitos dumps de thread e analisar os rastreamentos de pilha. Isso geralmente é mais rápido, não requer alterações de tempo de execução em seu bytecode (que pode quebrá-lo), mas também é menos preciso.

Profiling significa instrumenting suas classes e métodos, para que eles "relatem" sempre que forem executados. Isso é mais preciso, já que conta todas as invocações do método instrumentado, não apenas aquelas capturadas quando o dump é feito. No entanto instrumentação significa que o bytecode de suas classes é alterado, e isso pode quebrar seu programa. Na verdade, por esse motivo, usar perfis em grandes servidores de aplicativos (como JBoss ou WebLogic) geralmente faz com que tudo morra ou seja interrompido.

https://src-bin.com

O VisualVM tem duas guias separadas para amostragem e criação de perfil. Alguém pode me ajudar a descobrir a diferença entre amostragem e criação de perfil no VisualVM?





jvisualvm