zoukankan      html  css  js  c++  java
  • c#的FileSystemWatcher对象监视文件的变化的事件,无休止的触发事件的解决办法

    FileSystemWatcher.Changed 事件

    中又修改文件时 会发生死循环

    原因是:程序收到文件发生更改的通知后,马上又修改了文件,从而又使文件产生了更改的通知

        static void watcher_Changed(object sender, FileSystemEventArgs e)
            {
                lock (obj)
                {
                     File.AppendAllText(@"D:\test\t.txt", "test");
                }
               
                FileSystemWatcher watcher = (FileSystemWatcher)sender;
                watcher.EnableRaisingEvents = false;
                System.Threading.Thread.Sleep(100);
                watcher.EnableRaisingEvents = true;
            }

    这行代码似乎解决了问题:FileSystemWatcher watcher = (FileSystemWatcher)sender;
                watcher.EnableRaisingEvents = false;
                System.Threading.Thread.Sleep(100);
                watcher.EnableRaisingEvents = true;

    但有待验证

  • 相关阅读:
    Sql server数据库设计 7
    day08作业
    day01作业
    day07作业.
    day05作业
    day04作业
    day02作业
    初学Java的一些注意事项
    day07作业
    Week03面向对象入门
  • 原文地址:https://www.cnblogs.com/langu/p/2860956.html
Copyright © 2011-2022 走看看