学无先后达者为师!
不忘初心,砥砺前行。

.NET 中 FileSystemWatcher 的弊端:监控日志文件时事件不触发

在 C# 中,可以使用 FileSystemWatcher 来监控一个文件、目录是否发生改变。但如果用来监控日志文件(比如 log4net 输出的日志)则会发现:即使启用 LastWrite 和 Size 过滤器,变更反馈也不及时,甚至根本不触发。

一个经过实测的方案就是定时不断的去检测文件大小:如果文件大小发生变动则表明文件内容发生了变化。

需要注意的是:整个过程中的 FileInfo 、 FileStream 和 StreamReader 对象均不支持复用。也就是在每次检测和读取时都要创建新的对象,否则变更无法体现。

赞(4) 打赏
未经允许不得转载:码农很忙 » .NET 中 FileSystemWatcher 的弊端:监控日志文件时事件不触发

评论 抢沙发

给作者买杯咖啡

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫

登录

找回密码

注册