filesystemwatcher检查上次检测

时间:2014-11-18 15:38:16

标签: c# .net vb.net filesystemwatcher

我正在使用FileSystemWatcher监视.net中的文件夹,并且我正在触发创建,更改和重命名的事件。

在创建和重命名的活动中,NotifyFilterNotifyFilters.FileName 在Changed事件中,它设置为NotifyFilters.LastWrite

现在..如果最后一次射击超过1秒,我想不发射这些事件。所以每次射击都要延迟1秒。这也意味着它可以跳过在此延迟之间更改/重命名/创建的文件。只是在延迟的时候不要做任何事情。

我搜索并尝试了很多,但我无法解决它。

1 个答案:

答案 0 :(得分:0)

创建一个时间戳,表示处理事件的下一个有效时间。然后,在事件处理程序中,检查当时的时间。

Public Class MyClass
    Dim NextValidTime as DateTime

    public sub Some_Event_Handler()
        If Now() > NextValidtime Then
            'do stuff
            NextValidTime = DateAdd(DateInterval.Second, 1, Now)
        Else
            ' Not enough time has passed - do nothing
        End If
    end sub
End Class