根据时间跨度实现对象超时

时间:2010-07-10 13:20:17

标签: c# .net

大家好我需要实现一种方法来超时我的对象,而不使用基于特定时间跨度和最后交易日期的计时器类。任何人都可以指出这种良好的实施或样品可能吗?顺便说一下,这不是一个Web应用程序,而是一个控制台应用程序。

编辑1:

抱歉,我忘了告诉你们一些我的实际情况。我有不同的线程,如果在x个时间之后没有事件,则产生需要超时的对象。我已经有了一个使用计时器的工作逻辑,但我希望它更高效,而不是使用我的线程池上的线程(因为我正在使用一个计时器,那么WaitCallBack上的对象将由我的应用程序上的空闲线程处理域线程池)。我在想是否可以使用单个线程来做到这一点,但我对如何实现它感到很遗憾。希望有些人可以帮助我,谢谢!

2 个答案:

答案 0 :(得分:2)

如果没有某种计时器,我无法看到这样做的方法。

您可以从DateTime.Now中减去最后一个交易日期 - 使用您在特定时间范围内生成的时间跨度来获得初始化计时器所需的毫秒数。

答案 1 :(得分:0)

我感觉Cache对象可以帮助你 - 即使它不是一个Web应用程序,你仍然可以通过添加对System.Web的引用来使用它,或者如果你在.NET 4中,他们已经在System.Runtime.Caching中添加了它。