C#Directory.Exists的成本有多高

时间:2009-07-21 00:13:08

标签: c# logging

确保在应用程序中的每条日志消息之前存在日志目录是一个坏主意,这可能每秒记录几次(但不是连续)?

我可以实现一个文件系统观察器样式线程来启动并重新创建一个丢失的日志目录,但我的直觉是操作会稍微重一点

2 个答案:

答案 0 :(得分:4)

我会检查它是否第一次存在,例如构建你的记录器,如果不是那么就创建它。

Windows无法轻松删除正在使用的目录。

答案 1 :(得分:1)

可能不那么贵。如果你只是通过处理失败写入的异常来做到这一点,那么你只会在第一次(或删除目录之后)获得异常,然后其他所有内容都将直接通过。这可能比不断检查更好。