Πίνακας περιεχομένων:

Πώς μπορώ να δω μια χωματερή σωρών;
Πώς μπορώ να δω μια χωματερή σωρών;

Βίντεο: Πώς μπορώ να δω μια χωματερή σωρών;

Βίντεο: Πώς μπορώ να δω μια χωματερή σωρών;
Βίντεο: Πώς Να Μη Σπαταλάς Τα Χρήματά Σου | Men of Style 2024, Νοέμβριος
Anonim

Εάν έχετε ένα χωματερή σωρών αρχείο που είναι αποθηκευμένο στο τοπικό σας σύστημα, μπορείτε να ανοίξετε το αρχείο σε Java VisualVM επιλέγοντας Αρχείο > Φόρτωση από το κύριο μενού. Το Java VisualVM μπορεί να ανοίξει χωματερές σωρών σώθηκε στο. μορφή αρχείου hprof. Όταν ανοίγετε ένα αποθηκευμένο χωματερή σωρών , ο χωματερή σωρών ανοίγει ως καρτέλα στο κύριο παράθυρο.

Ομοίως, πώς μπορώ να κάνω μια χωματερή;

Υπάρχουν διάφοροι τρόποι για να δημιουργήσετε ένα java heap dump:

  1. Χρησιμοποιήστε την επιλογή jmap -dump για να λάβετε ένα heap dump κατά το χρόνο εκτέλεσης.
  2. Χρησιμοποιήστε την επιλογή jconsole για να αποκτήσετε ένα heap dump μέσω του HotSpotDiagnosticMXBean κατά το χρόνο εκτέλεσης.
  3. Η ένδειξη σωρού θα δημιουργηθεί όταν εμφανιστεί το OutOfMemoryError καθορίζοντας την επιλογή -XX:+HeapDumpOnOutOfMemoryError VM.
  4. Χρησιμοποιήστε το hprof.

Γνωρίζετε επίσης, τι είναι το heap dump; ΕΝΑ χωματερή σωρών είναι ένα στιγμιότυπο της μνήμης μιας διαδικασίας Java™. Το στιγμιότυπο περιέχει πληροφορίες σχετικά με τα αντικείμενα και τις κλάσεις Java στο σωρός τη στιγμή που ενεργοποιείται το στιγμιότυπο. Class loader, όνομα, super class και στατικά πεδία. Ρίζες αποκομιδής σκουπιδιών. Αντικείμενα που ορίζονται ότι είναι προσβάσιμα από το JVM.

Εδώ, πώς αναλύετε μια διαρροή μνήμης για ένδειξη σωρού;

Για να εντοπίσετε α έλλειψη μνήμης , θα χρειαστείτε ένα " χωματερή σωρών " με μια περίληψη των ζωντανών αντικειμένων σε μια διαδικασία διαρροής. Για να καταγράψετε α εγκαταλείπω , εκτελέστε πρώτα το jps για να βρείτε το PID της διαδικασίας και μετά εκτελέστε το jmap - εγκαταλείπω :live, format=b, file=(dumpfile) (pid).

Γιατί δημιουργείται χωματερή σωρών;

Το JVM δημιουργεί ο Χωματερή σωρών αρχείο στην καθορισμένη διαδρομή αρχείου. Μερικές φορές μπορεί να απαιτήσουμε Χωματερή σωρών σε βάση κατ' απαίτηση. Για να αντιμετωπίσουμε την κατανάλωση μνήμης, χρειαζόμαστε Χωματερή σωρών . Εάν δεν έχετε καθορίσει το HeapDumpPath, τότε το JVM δημιουργεί το αρχείο όπου εκτελείται η διαδικασία JAVA.

Συνιστάται: