Gunakan alat Linimasa alokasi untuk menemukan objek yang tidak di-garbage collection dengan benar, dan terus mempertahankan memori.
Cara kerja alat ini
Laporan Linimasa alokasi menggabungkan informasi ringkasan mendetail dari profiler heap dengan pembaruan dan pelacakan inkremental dari panel Linimasa. Serupa dengan alat ini, pelacakan alokasi heap melibatkan memulai perekaman, melakukan urutan tindakan, lalu menghentikan perekaman untuk analisis.
Alat ini mengambil snapshot heap secara berkala selama perekaman (seringnya setiap 50 md!) dan satu snapshot akhir di akhir perekaman.
Mencatat laporan Linimasa alokasi
Untuk mulai menggunakan alat Linimasa alokasi, ikuti langkah-langkah berikut:
- Buka panel Memory di DevTools.
- Aktifkan profil Alokasi di linimasa.
- Tekan tombol Mulai untuk mulai merekam.
Membaca profil alokasi heap
Profil alokasi heap menampilkan tempat dibuatnya objek dan mengidentifikasi jalur yang mempertahankan. Dalam snapshot berikut, batang di bagian atas menunjukkan kapan objek baru ditemukan di heap.
Tinggi setiap batang sesuai dengan ukuran objek yang baru dialokasikan, dan warna batang menunjukkan apakah objek tersebut masih aktif atau tidak dalam snapshot heap akhir. Batang biru menunjukkan objek yang masih aktif di akhir linimasa, Batang abu-abu menunjukkan objek yang dialokasikan selama linimasa, tetapi telah dihapus:
Anda dapat memperbesar untuk memfilter panel Constructor agar hanya menampilkan objek yang dialokasikan selama jangka waktu yang ditentukan. Untuk memperbesar, tarik mouse ke rentang waktu yang ingin Anda fokuskan di linimasa.
Mengklik konstruktor tertentu di panel Constructor akan menampilkan hierarki retensinya di panel Retainers. Dengan memeriksa jalur retensi ke objek, Anda akan mendapatkan informasi yang cukup untuk memahami mengapa objek tidak dikumpulkan, dan Anda dapat melakukan perubahan kode yang diperlukan untuk menghapus referensi yang tidak diperlukan.
Melihat alokasi memori berdasarkan fungsi
Anda juga dapat melihat alokasi memori berdasarkan fungsi JavaScript. Lihat Menyelidiki alokasi memori menurut fungsi untuk mengetahui informasi selengkapnya.