Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C#

Cách Buộc Thu Gom Rác (Garbage Collection) Trong C#


Có thể buộc bộ thu gom rác trong C# chạy bằng cách gọi phương thức Collect()

Đây không được coi là thực hành tốt vì có thể tạo ra chi phí hiệu suất. Collect() Buộc thu gom rác ngay lập tức cho tất cả các generation.

Collect(Int32) Buộc thu gom rác ngay lập tức từ generation 0 đến generation chỉ định.

Ví Dụ

using System; 
class MyGCCollectClass{ 
    private const int maxGarbage = 1000; 
    static void Main(){ 
        // Đặt một số đối tượng vào bộ nhớ. 
        MyGCCollectClass.MakeSomeGarbage(); 
        Console.WriteLine("Memory used before collection: {0:N0}", 
        GC.GetTotalMemory(false)); 
        // Thu gom tất cả các generation bộ nhớ. 
        GC.Collect(); 
        Console.WriteLine("Memory used after full collection: {0:N0}", 
        GC.GetTotalMemory(true)); 
    } 
    static void MakeSomeGarbage(){ 
        Version vt; 
        // Tạo đối tượng và giải phóng chúng để lấp đầy bộ nhớ bằng đối tượng không dùng. 
        for(int i = 0; i < maxGarbage; i++){ 
            vt = new Version(); 
        } 
    } 
}