תוכן עניינים:

איך אני צופה בערימה?
איך אני צופה בערימה?

וִידֵאוֹ: איך אני צופה בערימה?

וִידֵאוֹ: איך אני צופה בערימה?
וִידֵאוֹ: כיצד לגלות את הסיסמה של הרשת האלחוטית שלכם 2024, מאי
Anonim

אם יש לך מזבלה ערימה קובץ שנשמר במערכת המקומית שלך, תוכל לפתוח את הקובץ ב-Java VisualVM על ידי בחירה בקובץ > טען מהתפריט הראשי. Java VisualVM יכול להיפתח מזבלות ערימה נשמר ב. פורמט קובץ hprof. כאשר אתה פותח קובץ שמור מזבלה ערימה , ה מזבלה ערימה נפתח כלשונית בחלון הראשי.

באופן דומה, איך אני עושה מזבלה ערימה?

ישנן מספר דרכים ליצור ג'אווה heap dump:

  1. השתמש באפשרות jmap -dump כדי להשיג ערימה dump בזמן ריצה;
  2. השתמש באפשרות jconsole כדי לקבל ערימה dump דרך HotSpotDiagnosticMXBean בזמן ריצה;
  3. Heap dump תיווצר כאשר OutOfMemoryError נזרק על ידי ציון -XX:+HeapDumpOnOutOfMemoryError אפשרות VM;
  4. השתמש ב-hprof.

יודע גם, מה זה ערימה dump? א מזבלה ערימה הוא תמונת מצב של הזיכרון של תהליך Java™. תמונת המצב מכילה מידע על אובייקטי Java ומחלקות ב- ערימה ברגע שתמונת המצב מופעלת. מטעין כיתה, שם, סופר מחלקה ושדות סטטיים. שורשי איסוף אשפה. אובייקטים שהוגדרו להיות נגישים על ידי ה-JVM.

כאן, כיצד ניתן לנתח דליפת זיכרון ל-heap dump?

כדי להתחקות אחר א דליפת זיכרון , תצטרך " מזבלה ערימה " עם סיכום של האובייקטים החיים בתהליך דליפה. להקלטה א מזבלה , תחילה הפעל את jps כדי למצוא את ה-PID של התהליך, ולאחר מכן הפעל את jmap - מזבלה :live, format=b, file=(dumpfile) (pid).

מדוע נוצרת מזבלה ערימה?

ה-JVM מייצר ה ערימה dump קובץ בנתיב הקובץ שצוין. לפעמים אולי נדרוש ערימה dump על בסיס לפי דרישה. כדי לפתור בעיות בצריכת הזיכרון, אנו דורשים ערימה dump . אם לא ציינת את ה-HeapDumpPath, אז ה-JVM מייצר הקובץ שבו פועל תהליך ה-JAVA.

מוּמלָץ: