处理返回Timer的方法
我有一个方法返回System.Timers.Timer,然后沿代码使用它。 但MS代码分析给出了一个警告:CA2000:在丢失范围之前处理对象是否可以手动Dispose Timer并因此不发现这样的消息?
谢谢!
由于System.Timers.Timer
暗示IDisposable
,因此可以将您的方法调用包装在using
语句中以确保Dispose
被调用。
using(var timer = myClass.TimerMethod())
{
// Do the work here
}
System.Timers.Timer
实现IDisposable
所以把它放在里面using
:
using(var timer = MyMethodThatReturnsTimer())
{
}
如果你不能使用using
不仅仅是打电话Dispose
自己。