正在轮询文件服务器上的目录
本文关键字:文件服务器 | 更新日期: 2023-09-27 17:59:26
我需要编写一个应用程序来轮询文件服务器上包含图像的目录,并一次显示4个。
此应用程序将同时在网络上运行50次。
我正在尝试想出最好的体系结构来完成这个需求。
我正在考虑打开一个具有读/写访问权限且不允许文件共享的文件,这样,如果另一台电脑来读取它,它就会出错,并且必须转到下一台,问题是,我需要在同一台电脑上按顺序访问所有4个图像,以确保其他电脑不会试图打开它们。例如,如果PC1试图打开1.jpg,它需要能够打开1,2,3,4.jpg。如果另一台电脑同时进来阅读它们,我需要一种方法让它打开5,6,7,8.jpg等等。
这似乎是一个简单的要求,但尝试并成功构建却是一场噩梦。
这里基本上是在处理一个竞争条件,我看不出有什么方法可以从运行在不同机器上的应用程序的不同实例中处理它,除非你能保证你的文件命名始终遵循标准命名约定,允许你只使用第一个文件的名称来处理4个文件的序列。
处理此问题的最佳方法是使用集中资源来管理对文件的访问,可以是注释中建议的数据库,也可以是"分发"每组4个文件的服务(如WCF)。
创建一个1.jpg.lock
文件怎么样?文件的存在表示图像已锁定,应用程序的任何其他实例都应跳过该集。