EnableRaisingEvents every 100 milliseconds?

本文关键字:milliseconds every EnableRaisingEvents | 更新日期: 2023-09-27 18:02:37

我只是想知道是否有打开和关闭EnableRaisingEvents每100毫秒?例如,最初,EnableRaisingEvents设置为true。当有事件传入时,EnableRaisingEvents设置为false。100毫秒后,EnableRaisingEvents再次设置为true。在文件监视器接收到另一个事件之前,EnableRaisingEvents再次被设置为false。在EnableRaisingEvents关闭期间(设置为false)错过事件是可以的。所以我只是想知道我应该如何在代码中实现这个逻辑。让我困惑的是,这个事件无论如何都会被触发,我是否应该使用一个tick来决定是否接受这个事件?

EnableRaisingEvents every 100 milliseconds?

您可以尝试这样做(根据Austin Salonen的建议编辑):

private static Timer _myTimer = new Timer();
// ...
private static void OnTick(Object obj, EventArgs args)
{
    fileSystemWatcher.EnableRaisingEvents ^= true;
}
// ...
_myTimer.Tick += OnTick;
_myTimer.Interval = 100;
_myTimer.Start();

使用Timer(线程1)并将计时器的运行间隔设置为100毫秒,如果在UI线程上创建FS天气,则可能需要序列化调用,