移动CIFS文件会阻止其他人读/写吗?

时间:2012-06-19 10:55:24

标签: .net filesystems atomic cifs

我有一个场景,其中有一个应用程序指向CIFS(通用Internet文件系统),它读取文件,然后在本地移动每个文件以处理它,然后删除它,一切正常。

然而,现在需要从CIFS读取的文件越来越频繁,一个盒子已经不够用了,所以他们刚推出了更多的盒子,我认为这个应用程序没问题,但是我被告知了多台机器正在处理同一个文件,我认为这很奇怪,但我无法确定CIFS标准在处理多个移动时是如何工作的。

每台计算机的方案中的步骤(也有多个具有内部锁定机制的线程):

  • 获取所有CIFS文件的列表(与搜索crtieria相匹配)
  • 从列表中获取单个文件
  • 检查文件有一个相应的文件,表明它已成功写入
  • 将文件移至本地磁盘
  • 删除相应的文件
  • 用文件做

现在我最初的假设是CIFS只会在给定时间内尊重一个移动请求,但是根据向我报告的内容,我不确定是否是这种情况,并且它正在尊重两个移动请求。

环境/应用程序的更多上下文:

  • 使用用户名/密码身份验证在Windows上托管的CIFS
  • 托管在Windows上并以.NET编写的应用程序
  • 使用FileInfo.MoveTo()
  • 移动的文件
  • 所有应用程序实例都在不同的物理计算机上

任何与上述相关的信息都会很棒!

0 个答案:

没有答案