处理返回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自己。

链接地址: http://www.djcxy.com/p/63011.html

上一篇: Disposing method which returns Timer

下一篇: Incorrect elapse time for System.Timers.Timer