繁体   English   中英

FileSystemWatcher 在一段时间后停止引发事件

[英]FileSystemWatcher stops raising events after a period of time

我们已经构建了一个 window 服务,它使用FileSystemWatcher监听文件夹,创建后我们处理文件等等。 但几天后,该活动停止工作。

  • 是否有可能被垃圾收集器 (GC) 收集?
  • GC 是否收集它持有 class (这是一个单例)?
  • 我应该使用弱事件吗?
  • 我是否有一个错误意味着该事件被取消注册?

我认为问题是,FSW 有一个内部缓冲区,当它溢出它的一个错误时,看看这篇提供代码来解决这个问题的文章。
希望这对任何人都有帮助。

正如这里所建议的,有几件事要尝试:

总之:

protected virtual void TimerTick(object sender, EventArgs e)
{
    // stop your timer
    this.timer.Stop();

    try
    {
        // TODO: add event handler specifics
    }
    catch
    {
        // TODO: add some logging to help you see what's going on
    }        

    // restart your timer
    this.timer.Start();
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM