为什么 Win 7 机器每次读取其他机器上的文件时都会将其锁定 30 秒?

为什么 Win 7 机器每次读取其他机器上的文件时都会将其锁定 30 秒?

我们在从 Win XP 计算机迁移到 Win7 计算机时遇到了一个问题。我们有几个数据收集程序在连续运行,并将数据捕获/记录到 Win7 计算机。

网络上的其他计算机运行客户端程序,从充当“主机”的 Win7 计算机上的位置读取这些记录的数据文件(我不会称之为服务器,因为它只是另一个工作站)。

当其他计算机运行 XP 时,我们没有遇到任何问题。但现在我们正在更新到 Win7,我们发现每当这些其他 Win7 计算机从“主机”计算机读取其中一个记录的数据文件时,该文件似乎被“锁定”了大约 30 秒。这阻止了数据收集计算机能够成功地将新数据附加到该文件,也阻止了其他计算机能够读取该文件。

这是不可接受的,因为数据收集计算机每 10 秒就会为其中一个文件写入一个新的(替换)文件,并且每 2.5 分钟会将其附加到另一个文件中。其中一个“客户端”程序会尝试每 10 秒自动读取一次最新数据。因此,它会永久锁定相关文件,并且永远不会看到任何新的更新数据,因为数据收集 PC 一直处于阻塞状态。

当“客户端”PC 运行的是 XP 时,所有这一切都运行正常。“主机”在 Win 7 或 XP 下运行正常,但“读取”文件的 PC 显然不能运行 Win7。

因此,看来 Win7 在读取文件时做了一些事情(这些只是普通的逗号分隔的文本文件),导致文件被锁定,而 XP 从未这样做过。我可以通过尝试在任何一台 Win7“客户端”电脑上将文件加载到记事本中来复制该问题。同样,在 XP 上,一切正常。但在 Win7“客户端”上,每次将文件重新加载到客户端时,“主机”上的文件都会被锁定大约 30 秒。

我们是否可以在 Win7 机器上更改某些设置来阻止它们创建此文件锁?

抱歉,帖子太长了。提前感谢大家提出的任何建议。

相关内容