Bagikan melalui


GC.RefreshMemoryLimit Metode

Definisi

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.

Berlaku untuk