一个后FileSystemWatcher.Error
引发事件,我不知道下一步该怎么做的线索。 例外可以是[比较]次要之一,如
同时在目录中太多的变化
这并不影响观看者的观看过程中,但它也可以是一个大问题 - 比如监控目录被删除,在这种情况下,观察者不再起作用。
我的问题是什么是处理错误事件的最好方法?
一个后FileSystemWatcher.Error
引发事件,我不知道下一步该怎么做的线索。 例外可以是[比较]次要之一,如
同时在目录中太多的变化
这并不影响观看者的观看过程中,但它也可以是一个大问题 - 比如监控目录被删除,在这种情况下,观察者不再起作用。
我的问题是什么是处理错误事件的最好方法?
依赖于一定的误差?
我只想得到内部异常类型,然后决定在每个错误基础上做了什么(重启或失败)。
所以
myWatcher.Error += new ErrorEventHandler(OnError);
通过Followde
private static void OnError(object source, ErrorEventArgs e)
{
if (e.GetException().GetType() == typeof(InternalBufferOverflowException))
{
// This can happen if Windows is reporting many file system events quickly
// and internal buffer of the FileSystemWatcher is not large enough to handle this
// rate of events. The InternalBufferOverflowException error informs the application
// that some of the file system events are being lost.
Console.WriteLine(("The file system watcher experienced an internal buffer overflow: " + e.GetException().Message));
}
}