在yaml文件上写锁?

时间:2011-03-30 11:42:25

标签: perl yaml

This帖子解释了如何将文件写入锁定在常规文件上。

但是可以锁定yaml文件,所以一次只能有一个脚本写入吗?

我正在使用YAML::Syck,如果这有所不同。

2 个答案:

答案 0 :(得分:1)

您可以使用flock锁定文件。您需要先打开文件,因为flock对文件句柄进行操作 或者,您可以使用CPAN中的LockFile::Simple

答案 1 :(得分:1)

正如其他人所说,使用flock。另请参阅“如何锁定文件”下的perlfaq5

重要的是要注意它仍然是建议锁定,因此不需要实际锁定.yaml文件。您可以锁定一个锁定文件(可能是yourfile.yaml.lock)并在完成后将其解锁。

这也使您能够说“此操作块需要独占访问权限”,而不是仅限制您对单个文件的排他性。