gpt4 book ai didi

linux - 如何检查文件是否已锁定以写入 perl 而无需再次实际锁定?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:56:55 25 4
gpt4 key购买 nike

如何在 perl 中检查文件是否被锁定以写入。我不想再次使用锁定,如果它失败,它会告诉它正在被其他进程锁定。

flock (FILE, LOCK_EX | LOCK_NB)

我不想使用上述技术,因为如果文件未被其他进程锁定,它会锁定文件。

最佳答案

I want a condition like if the file is not locked then start writing to file.

你说了文件未锁定时你想做什么,但你没有说文件锁定时你想做什么。我想你想等它解锁。

如果是这样,请使用以下内容:

open(my $fh, ">>", $qfn) or die $!;
flock($fh, LOCK_EX) or die $!;
print($fh ...);
close($fh);

如果想先清空文件,在获得锁后进行如下操作:

truncate($fh, 0) or die $!;

关于linux - 如何检查文件是否已锁定以写入 perl 而无需再次实际锁定?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34894711/

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