如何限制C#工作量?

时间:2014-01-11 09:59:55

标签: c# .net

我正在使用文件观察程序。它只需要在没有更多事件发生火灾10秒后执行动作。

对于这些类型的问题,我在JavaScript中使用了一个限制功能,我想知道C#是否可以做类似的事情:

var t = null;
function throttleAction(fn){
    if(t != null){
        window.clearTimeout(t);
    }
    t = window.setTimeout(function(){
        t = null;
        fn();
    }, 10000);  
}

我如何在C#中实现这样的东西?

1 个答案:

答案 0 :(得分:1)

使用System.Timers.Timer。将Interval属性设置为您选择的间隔,编写您的worker函数,然后将其作为委托传递给Elapsed事件。最后,启动计时器。