my $fh;open $fh,">>","file.txt";flock($fh,LOCK_EX);open $fh,"+<","file.txt";close $fh;
文件锁会保留还是会被释放?如果它会被释放有没有办法让它留下来?
我没有找到相关信息.
通过在两种不同的模式下使用相同的文件句柄打开相同的文件,我不清楚你要做什么.如果您使用第二个文件句柄怎么办?
open my $fh,LOCK_EX);open my $fh2,"file.txt";... rewrite 'file.txt' with $fh2 ...close $fh2; # done with rewriteclose $fh; # done with lock
对于<中的文件,看起来像flock一样受到尊重模式(在linux中工作,这可能不是可移植的),所以使用它和一些搜索语句,你只需要一个文件句柄.
# make sure file exists before you use '+<' mode{ open my $touch,'>>','file.txt'; }open my $fh,'+<','file.txt';flock $fh,LOCK_EX;seek $fh,2;print $fh 'stuff for the end of the file';seek $fh,0;print $fh 'something for the start of the file';close $fh; # releases lock总结
以上是内存溢出为你收集整理的perl – 当您再次使用open时,文件锁会保留吗?全部内容,希望文章能够帮你解决perl – 当您再次使用open时,文件锁会保留吗?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)