本文介绍了需要C#代码的说明的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

提供2个班级:

Given 2 classes:

public class SomePublisher
{
public event EventHandler SomeEvent;
}

public class SomeSubscriber
{
public static int Count;

public SomeSubscriber(SomePublisher publisher)
{
publisher.SomeEvent += new EventHandler(publisher_SomeEvent);
}

~SomeSubscriber()
{
SomeSubscriber.Count++;
}

private void publisher_SomeEvent(object sender, EventArgs e)
{
// TODO: something
}
}


执行以下操作后将显示什么以及原因:


What would be printed after executing the following and why:

SomePublisher publisher = new SomePublisher();

for (int i = 0; i < 10; i++)
{
SomeSubscriber subscriber = new SomeSubscriber(publisher);
subscriber = null;
}

GC.Collect();
GC.WaitForPendingFinalizers();

Console.WriteLine(SomeSubscriber.Count.ToString());

推荐答案


这篇关于需要C#代码的说明的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-14 18:07