VisualVM verfügt über zwei separate Registerkarten zum Abtasten und Profiling. Kann mir jemand helfen, den Unterschied zwischen Sampling und Profiling in VisualVM herauszufinden?Unterschied zwischen Abtastung und Profilerstellung in jVisualvm
141
A
Antwort
166
Sampling
bedeutet, viele Thread-Dumps zu nehmen und Stack-Traces zu analysieren. Dies ist in der Regel schneller, erfordert keine Laufzeitänderungen in Ihrem Bytecode (was es brechen kann), ist aber auch weniger genau.
Profiling
bedeutet instrumenting Ihre Klassen und Methoden, so dass sie "melden", wenn sie ausgeführt werden. Dies ist genauer, da es jeden Aufruf der instrumentierten Methode zählt, nicht nur diejenigen, die beim Beenden des Speicherauszugs erfasst werden. Instrumentierung bedeutet jedoch, dass der Bytecode Ihrer Klassen geändert wird, was Ihr Programm beschädigen kann. Aus diesem Grund führt die Verwendung von Profiling auf großen Anwendungsservern (wie JBoss oder WebLogic) häufig dazu, dass alles abstürzt oder hängt.
Verwandte Themen
- 1. Abtastung eines Graphen in R
- 2. Unterschied zwischen `% in%` und `==`
- 3. Was sind die Unterschiede zwischen JVisualVM und Java Mission Control?
- 4. Unterschied zwischen $ @ und $! in Perl
- 5. Unterschied zwischen '.' und "." in Java
- 6. Unterschied zwischen $ {} und $() in Bash
- 7. Unterschied zwischen und „-“ in r
- 8. Unterschied zwischen .. und ... in Ruby
- 9. Unterschied zwischen "" und "" in Python
- 10. Unterschied zwischen // und /// in C#
- 11. Unterschied zwischen. und #
- 12. Upload und Download Profilerstellung in Android
- 13. MySQL: Unterschied zwischen ', `,' und '
- 14. C++ Unterschied zwischen '//' und '///'
- 15. Unterschied zwischen String.Empty und ""
- 16. Unterschied zwischen = und: =
- 17. Unterschied zwischen Vorzeichen & und *?
- 18. VBA: Unterschied zwischen & und +
- 19. Unterschied zwischen "**/* /" und "** /"?
- 20. Unterschied zwischen $ # und $ {# @}
- 21. Unterschied zwischen '#', '%' und '$'
- 22. Unterschied zwischen numpy.logical_and und &
- 23. Unterschied zwischen // und http: //
- 24. Cython: pyximport: Aktivieren der Profilerstellung in pyximport.install
- 25. Vert.x JVisualVM-Überwachung
- 26. JVisualVM für Linux-Konsole?
- 27. Unterschied zwischen -Wconversion zwischen gcc und g ++
- 28. Geschichtete Abtastung mit Zufalls Wälder in R
- 29. Unterschied zwischen org.apache.spark.ml.classification und org.apache.spark.mllib.classification
- 30. Unterschied zwischen layoutinflater.inflate und layoutinflater.from
Würde dies bedeuten, dass das Profiling genauer ist als das Sampling, aber es würde mehr Ressourcen benötigen? – Parag
Ja, ich habe die Antwort aktualisiert. – npe
Ich habe festgestellt, dass Sampling jedes Mal mehr als genau genug ist, wenn ich es verwendet habe, um die Methoden mit schlechter Leistung ausfindig zu machen. Ich persönlich benutze nie Profiling. – Marquez