为什么不总是处理?

Ign*_*mez 2 c# dispose

我知道这个问题已被提出,但我的问题比我见过的其他问题更为普遍.

当我在我的程序中检查我使用控件Forms和命令DB(命令,读者等)时,我遇到了以下问题:

如果我有一个控制器,Dispose我使用后不应该使用它吗?

这样我将确保我的程序只使用所需的资源,如果我必须使用已经处理的控件,那么我将再次加载它.

也许有理由不总是处理所有事情,但这就是我问这个问题的原因.

谢谢你的回答,我希望我能说清楚.

D S*_*ley 7

您创建的非可视组件(命令,读取器,I/O组件,基本上任何实现的组件IDisposable)应在完成后处理.

对于可视化控件,Form的Dispose功能应释放所有控制在它的Controls自动采集,所以你只需要担心您从窗体的删除控件Controls出于某种原因.

除非您遇到严重的内存问题,否则尝试手动处理表单控件可能是微优化.