GC.RefreshMemoryLimit Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menginstruksikan Pengumpul Sampah untuk mengonfigurasi ulang dirinya dengan mendeteksi berbagai batas memori pada sistem.
public:
static void RefreshMemoryLimit();
public static void RefreshMemoryLimit ();
static member RefreshMemoryLimit : unit -> unit
Public Shared Sub RefreshMemoryLimit ()
Pengecualian
Batas keras terlalu rendah. Ini dapat terjadi jika batas keras tumpukan yang akan diatur refresh, baik karena pengaturan AppData baru atau tersirat oleh perubahan batas memori kontainer, lebih rendah dari yang sudah dilakukan.
-atau-
Batas keras tidak valid. Ini dapat terjadi, misalnya, dengan persentase batas keras timbunan negatif.
Keterangan
Selain batas memori fisik aktual dan pengaturan batas kontainer, pengaturan konfigurasi ini dapat ditimpa:
- GCHeapHardLimit
- GCHeapHardLimitPercent
- GCHeapHardLimitSOH
- GCHeapHardLimitLOH
- GCHeapHardLimitPOH
- GCHeapHardLimitSOHPercent
- GCHeapHardLimitLOHPercent
- GCHeapHardLimitPOHPercent
Alih-alih memperbarui variabel lingkungan (yang tidak akan dibaca), ini mengambil alih pengaturan ini dengan menggunakan nilai ulong di AppContext.
Misalnya, Anda dapat menggunakan AppContext.SetData("GCHeapHardLimit", (ulong) 100 * 1024 * 1024)
untuk mengganti GCHeapHardLimit ke 100M.
API ini hanya menangani konfigurasi yang dapat ditangani saat runtime dimuat. Untuk konfigurasi yang tidak memiliki efek apa pun pada sistem 32-bit (seperti yang GCHeapHardLimit*), API ini tidak akan menanganinya.