问题标签 [filelock]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
12 回答
218512 浏览

c# - 如何检查文件锁定?

有没有办法在不使用 try/catch 块的情况下检查文件是否被锁定?

现在,我知道的唯一方法就是打开文件并捕获任何System.IO.IOException.

0 投票
2 回答
3978 浏览

java - 使用Java的FileLock时,可以让close()自动做一个lock.release()吗?

正如大多数人应该知道的那样,close()也关闭了任何流使用。

这允许以下代码:

这很好,因为我们不需要引用FileInputStream并记得关闭它。

但它也适用于FileLocks 吗?

我已经尝试过这段代码,并且在br.close()调用时锁被正确释放,但是这样做安全吗?Closeable JavaDoc说:“关闭此流并释放与之关联的任何系统资源。” 我可以安全地假设我按照锁close()的规定使用吗?release()

0 投票
6 回答
7369 浏览

c# - 如何最好地等待文件锁释放

我有一个应用程序,有时我需要从正在写入的文件中读取并因此被锁定。正如我从其他问题中了解到的那样,我应该捕获 IOException 并重试,直到我可以阅读为止。

但我的问题是我如何确定该文件已被锁定并且它不是另一个 IOExcetpion 发生。

0 投票
10 回答
114723 浏览

powershell - 用于检查锁定文件的应用程序的 PowerShell 脚本?

在 PowerShell 中使用,如何检查应用程序是否正在锁定文件?

我喜欢检查哪个进程/应用程序正在使用该文件,以便我可以关闭它。

0 投票
3 回答
6063 浏览

visual-studio-2008 - 有没有办法在构建后事件中删除输出文件

我正在尝试在 .NET 构建上运行构建后批处理文件,该文件对输出文件进行加密,删除原始文件,然后将加密版本重命名为原始输出文件名。IE:

构建 A,然后在构建后:

  1. 加密 A->B,
  2. 德尔/法,
  3. 重命名 B A。

我似乎无法在加密后删除原始输出文件,因为安装程序项目(或者项目本身?)似乎有文件锁定。我尝试强制删除,但它不仅仅是一个只读属性,而是一个完整的锁定。有没有办法解决这个问题?

0 投票
4 回答
15368 浏览

.net-3.5 - 如何找出哪些进程锁定了文件夹或文件?

您如何查询正在运行的进程以找出它们锁定了哪些文件夹或文件?(即你去弹出一个驱动器,你被告知它不能被弹出,因为它正在使用中)

我想获得“现成”下载,或者编写一个 .NET 3.5 应用程序来执行此操作(主要是 Windows 问题)。

0 投票
2 回答
3990 浏览

java - 使用Java读取和处理文件时如何防止文件被覆盖?

我需要用Java读取和处理一些大文件,我想知道,是否有一些明智的方法来保护文件,在我读取和处理它时它不会被其他进程覆盖?

也就是说,以某种方式使其成为只读,使其保持“打开”或其他...

这将在 Windows 环境中完成。

兄弟,图科

0 投票
2 回答
8879 浏览

java - Java 文件锁定和 Windows - 锁定不是“绝对的”?

我正在尝试使用FileLock在 Windows 环境中使用 Java 锁定文件,但遇到了一个问题:锁定文件后,其他进程至少在某种程度上仍然可以访问它。

示例代码如下:

现在,当我用这个例子锁定我的文件时,它被锁定:

  • Windows 无法删除
  • Eclipse 拒绝打开它

...但它仍然不是完全防弹的:

  • 例如,如果我使用 Scite(文本编辑器)打开它,则不会显示任何内容,但如果我选择保存文件(打开时为空或写入一些内容),它会成功并清除文件的内容.. . (即使我用 Scite 写了一些东西,之后也没有内容存在)

是否有某种方法可以完全防止文件被 Windows 中使用 Java 的其他进程覆盖/清除?

如果我理解正确,我正在使用独占锁 atm。使用共享锁可以做更多的事情。

此测试是在 Windows 2000 上运行的。

兄弟,图科

0 投票
2 回答
5971 浏览

wpf - 如何让 WPF 的 DocumentViewer 释放其对源 XPS 文档的文件锁定?

在 WPF DocumentViewer 中显示 XPS 文件并关闭 DocumentViewer 实例后,XPS 文件被锁定,我无法删除它。我需要解除对 XPS 文件的锁定,以便删除它,用相同的名称编写另一个文件,并可选择在新的 DocumentViewer 实例中显示新的 XPS 文件。我需要在同一个应用程序实例中执行此操作 - 无需关闭应用程序(这是打印预览场景)。

换句话说,我如何让以下代码运行而不在“File.Delete(tempXpsFile);”处引发异常 陈述?

关闭应用程序确实会释放文件锁定,如WPF DocumentViewer 中所述,不会释放 XPS 文件,但在这种情况下这不是一个选项。

0 投票
2 回答
21842 浏览

c# - 我可以防止 StreamReader 在使用文本文件时锁定它吗?

StreamReader 在读取文本文件时锁定它。
我可以强制 StreamReader 在“只读”或“非锁定”模式下工作吗?

我的解决方法是将文件复制到临时位置并从那里读取,但如果可能的话,我更愿意直接使用 StreamReader。任何替代建议?

背景:
我编写了一个小应用程序来从日志文件中获取一些统计信息。这个文件不断被外部程序更新(每秒几次),让我们调用 AAXXYY。

查看输出表明我的应用程序可能正在锁定文件并阻止 AAXXYY 写入。

这就是我正在做的