好的,我有一个关于在WinForms应用程序中实现接口的问题。基本上我有一个我建立的控制库。每个控件都有一个与主表单交互的接口。为什么我的每个接口都需要2MB的RAM?
我一直在做的是创建一个属性处理程序,它是接口的类型,然后像这样做。
在控制:
public interface ITest {
void Test1();
void Test2();
}
private ITest _testHandler;
public ITest TestHandler {
get { return _testHandler; }
set { _testHandler = value; }
}
在主要形式有:
public MainForm : Form, MyControl.ITest {
public MainForm() {
InitializeComponent();
MyTestControl.TestHandler = this;
}
// Implementing methods here...
}
接口是否正常工作。我只是好奇,为什么它会为每一个占据如此之多的内存。我不认为接口应该真的影响性能。
你怎么测量他们的内存消耗? – MoonKnight
你怎么知道他们占用2兆内存(顺便说一句,*接口*不占用内存,它只是一个与编译器的合同。) –
接口不占用内存;数据确实。你是实现类(等等)是实际占用内存的东西。 –