ICorProfilerInfo2::Metode GetGenerationBounds
Mendapatkan wilayah memori, yang merupakan segmen tumpukan, yang membentuk berbagai generasi pengumpulan sampah.
Sintaks
HRESULT GetGenerationBounds(
[in] ULONG cObjectRanges,
[out] ULONG *pcObjectRanges,
[out, size_is(cObjectRanges), length_is(*pcObjectRanges)] COR_PRF_GC_GENERATION_RANGE ranges[]);
Parameter
cObjectRanges
[in] Jumlah elemen yang dialokasikan oleh pemanggil untuk larik ranges
.
pcObjectRanges
[out] Pointer ke bilangan bulat yang menentukan jumlah total rentang, beberapa atau semuanya akan dikembalikan dalam larik ranges
.
ranges
[out] Larik struktur COR_PRF_GC_GENERATION_RANGE , yang masing-masing menggambarkan rentang (yaitu, blok) memori dalam generasi yang sedang menjalani pengumpulan sampah.
Keterangan
Metode GetGenerationBounds
dapat dipanggil dari panggilan balik profiler apa pun, asalkan pengumpulan sampah tidak berlangsung.
Sebagian besar perpindahan generasi terjadi selama pengumpulan sampah. Generasi mungkin tumbuh di antara koleksi tetapi umumnya tidak berpindah-pindah. Oleh karena itu, tempat paling menarik untuk menelepon GetGenerationBounds
adalah di ICorProfilerCallback2::GarbageCollectionStarted
dan ICorProfilerCallback2::GarbageCollectionFinished
.
Selama startup program, beberapa objek dialokasikan oleh runtime bahasa umum (CLR) itu sendiri, umumnya pada generasi 3 dan 0. Jadi, pada saat kode terkelola mulai dijalankan, generasi ini sudah berisi objek. Generasi 1 dan 2 biasanya akan kosong, kecuali objek dummy yang dihasilkan oleh pengumpul sampah. (Ukuran objek dummy adalah 12 byte dalam implementasi 32-bit CLR; ukurannya lebih besar dalam implementasi 64-bit.) Anda mungkin juga melihat rentang generasi 2 yang ada di dalam modul yang diproduksi oleh Generator Gambar Asli (NGen.exe ). Dalam hal ini, objek di generasi 2 adalah objek beku, yang dialokasikan saat NGen.exe dijalankan dan bukan oleh pengumpul sampah.
Fungsi ini menggunakan buffer yang dialokasikan pemanggil.
Persyaratan
Platform: Lihat Persyaratan Sistem.
Header: CorProf.idl, CorProf.h
Pustaka: CorGuids.lib
Versi .NET Framework: Tersedia mulai dari 2.0
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk