在IDisposable中使用静态方法的任何风险?

时间:2013-09-24 15:01:42

标签: .net c#-4.0 memory-management static-methods idisposable

我有一个实现IDisposable的类,我希望将一些方法设为静态。这样做会对内存管理或其他任何东西产生负面影响吗?

2 个答案:

答案 0 :(得分:1)

不,因为类上的静态方法是not involved in memory management。正如静态所暗示的那样,该方法与类的任何给定实例无关,而是该方法与整个类有关。

答案 1 :(得分:1)

在那里调用静态方法应该没有任何风险。不过,我很好奇,为什么你会这么想。 IDisposable应该处理清理给定实例使用的本机资源。静态方法不适用于对象的任何特定实例(除非您将其作为参数传递)。看起来你会调用的任何方法都会更好地作为实例方法而不是静态方法。