我编写了一个必须监视实时日志文件的Java应用程序。但是我没有想到文件被锁定的可能性,现在就是这种情况。
有没有办法禁用在Windows下的目录中添加文件锁的功能?如果我成功了,那么写入日志的程序会发生什么(我认为它是用C#编写的)。
我怀疑记录器会锁定文件以防止它被删除,我看不出有什么理由需要阻止它的读取。
是否有人知道另一个解决方案是从Java中“取消”文件锁的读取部分,如果这样做有意义的话?
答案 0 :(得分:1)
锁的整个想法是,当你获得它时,你有某种保证,你可以对文件进行独占访问(所需类型)。也许其他应用程序的程序员犯了错误,或者没有考虑他/她如何锁定文件。
我认为没有干净的方法来绕过这个问题(除了挂钩操作系统调用?)。您可以在运行其他应用程序之前打开文件,但在这种情况下应用程序甚至可能无法启动。