首页 > 解决方案 > 为什么垃圾收集器不触发终结器?

问题描述

我有这个小程序(真实的程序当然很不一样)。

using System;

namespace Finalizer
{
    public class Simple
    {
        public Simple()
        {
            Console.WriteLine("Constructor");
        }
        ~Simple()
        {
            Console.WriteLine("Finalizer");
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
            var s = new Simple();
            s = null;
            GC.Collect();
            Console.WriteLine("Collected");
            Console.ReadKey();
        }
    }
}

这是输出:

Hello World!
Constructor
Collected

我不明白为什么我看不到这Finalizer条线。

任何人?

标签: c#finalizer

解决方案


推荐阅读