gpt4 book ai didi

linux - Linux 中文件互斥吗?如何实现?

转载 作者:IT王子 更新时间:2023-10-29 01:03:27 25 4
gpt4 key购买 nike

在 Windows 中,如果我用 MS Word 打开文件,然后尝试删除它。系统会阻止我。它可以防止文件被删除。

Linux中有类似的机制吗?自己写程序怎么实现?

最佳答案

Linux 中没有类似的机制。事实上,我发现 Windows 的这个功能是一个令人难以置信的错误功能和一个大问题。

一个程序通常不会打开它正在处理的文件,除非该程序是一个数据库并在工作时更新文件。程序通常只是打开文件,写入内容,然后在您保存文档时将其关闭。

vim.swp 文件随着 vim 的工作而更新,并且 vim 一直保持打开状态,所以即使你删除它,文件也不会真的走开。如果在 vim 运行时删除 .swp 文件,vim 将失去恢复能力。

在 Linux 中,如果您在进程打开文件时删除文件,系统会保持它存在,直到对它的所有引用都消失。文件系统中引用该文件的名称将消失。但文件本身仍在磁盘上。

如果系统崩溃而文件仍处于打开状态,当系统恢复时它将被清理并从磁盘中删除。

之所以在 Windows 中出现这样的问题,是因为强制锁定经常会阻止应该成功的操作成功。例如,备份进程应该能够读取正在写入的文件。在备份继续之前,它不应该停止正在进行写入的进程。在许多其他情况下,应该能够继续进行的操作会因为一些愚蠢的原因而被阻止。

关于linux - Linux 中文件互斥吗?如何实现?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5757572/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com