فهرست مطالب:

چگونه می توانم یک heap dump را مشاهده کنم؟
چگونه می توانم یک heap dump را مشاهده کنم؟

تصویری: چگونه می توانم یک heap dump را مشاهده کنم؟

تصویری: چگونه می توانم یک heap dump را مشاهده کنم؟
تصویری: نحوه گرفتن heap dump و Rread، تجزیه و تحلیل فایل heap dump توسط نرم افزار رایگان VisualVM | فایل hprof 2024, نوامبر
Anonim

اگر شما یک توده زباله فایل ذخیره شده در سیستم محلی شما، می توانید فایل را در Java VisualVM با انتخاب File > Load از منوی اصلی باز کنید. Java VisualVM می تواند باز شود زباله های انبوه ذخیره شده در. فرمت فایل hprof وقتی یک ذخیره شده را باز می کنید توده زباله ، توده زباله به عنوان یک برگه در پنجره اصلی باز می شود.

به طور مشابه، چگونه می توانم یک زباله دانی ایجاد کنم؟

چندین راه برای ایجاد یک دامپ پشته جاوا وجود دارد:

  1. از گزینه jmap -dump برای بدست آوردن heap dump در زمان اجرا استفاده کنید.
  2. از گزینه jconsole برای بدست آوردن heap dump از طریق HotSpotDiagnosticMXBean در زمان اجرا استفاده کنید.
  3. Heap dump زمانی ایجاد می شود که OutOfMemoryError با مشخص کردن گزینه -XX:+HeapDumpOnOutOfMemoryError VM ایجاد می شود.
  4. از hprof استفاده کنید

همچنین بدانید که heap dump چیست؟ آ توده زباله یک عکس فوری از حافظه یک فرآیند Java™ است. عکس فوری حاوی اطلاعاتی در مورد اشیاء و کلاس های جاوا در پشته در لحظه ای که عکس فوری فعال می شود. بارگذار کلاس، نام، کلاس فوق العاده و فیلدهای استاتیک. ریشه های جمع آوری زباله اشیایی که توسط JVM قابل دسترسی هستند تعریف شده است.

در اینجا، چگونه نشت حافظه را برای heap dump تجزیه و تحلیل می کنید؟

برای ردیابی a نشت حافظه ، شما به یک "نیاز دارید توده زباله " با خلاصه ای از اشیاء زنده در یک فرآیند نشتی. برای ثبت یک زباله ، ابتدا jps را اجرا کنید تا PID فرآیند را پیدا کنید، سپس jmap را اجرا کنید - زباله :live، format=b، file=(dumpfile) (pid).

چرا heap dump ایجاد می شود؟

JVM ایجاد می کند را هیپ دامپ فایل در مسیر فایل مشخص شده گاهی ممکن است نیاز داشته باشیم هیپ دامپ بر اساس تقاضا برای عیب یابی مصرف حافظه، نیاز داریم هیپ دامپ . اگر HeapDumpPath را مشخص نکرده اید، JVM ایجاد می کند فایلی که فرآیند جاوا در آن اجرا می شود.

توصیه شده: