c# - 目录监控

标签 c# file directory

我检查目录中是否有新文件的最佳方法是什么,我认为 filesystemwatcher 不适合,因为这不是一个始终在线的服务,而是一种在我的程序启动时运行的方法。

我正在监视的文件夹结构中有超过 20,000 个文件,目前我正在单独检查每个文件以查看文件路径是否在我的数据库表中,但这需要大约十分钟,我想加快速度有可能,

我可以存储上次检查文件夹的日期 - 使用 createddate > 上次检查日期获取所有文件是否容易。

有人有什么想法吗?

谢谢

标记

最佳答案

您的方法是唯一可行的(即文件系统观察器允许您查看更改,而不是在开始时检查)。

找出需要这么长时间的原因。 20.000 次检查不应花费 10 分钟 - 最多可能需要 1 分钟。你的程序写得很慢。你如何测试它?

提示:不要询问数据库,获取内存中所有文件的列表,数据库中所有文件的列表,检查内存。 20.000 个 SQL 语句到数据库太慢了,这样你需要一个来获取列表。

关于c# - 目录监控,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2793422/

相关文章:

c# - 如何使用关闭方法正确实现处置模式 (CA1063)

c# - 了解 C# 文件创建选项发生冲突的原因

c# - 目录大小改变事件

c# - Schedulercontrol 隐藏上下文菜单

c# - Azure AD GraphServiceClient 无法针对用户设置 AdditionalData

c# - Unity 插件内的 C# 脚本中未触发回调

Android:获取私有(private)文件的lastModified

Java专用IDE : Project files vs project zip/jar

linux - 用于迭代目录并创建 tar 文件的 bash 脚本

c# - 获取文件时出现 UnauthorizedAccessException