我在目标c中编写应用程序,该应用程序的一个功能是它监视本地文件夹中的新文件。本地文件夹是为其他用户共享的,因此任何人都可以在那里放置(通常是5gb左右的文件)。我正在寻找一种与放在共享文件夹中的新文件进行交互的方法。这些文件必须在应用程序尝试访问它们之前完成复制。
我试图监控新文件的大小,问题是这些文件也是通过无线方式复制的,所以在hickup的情况下,大小保持不变,应用程序已经开始与文件。
将文件放在共享上的客户端没有运行任何复制应用程序,只是查找器或Windows资源管理器。所以没有办法使用锁文件或类似的东西。
例如Dropbox如何做到这一点?
答案 0 :(得分:0)
显然你可以使用shell命令:
lsof -Fc path/to/thefile
这将告诉您哪些进程打开了文件。有关详细信息,请参阅此主题:Detect file in use by other process