2011-03-30 2 views

답변

1

flock을 사용하여 파일을 잠글 수 있습니다. 파일 핸들을 조작하는 flock 파일을 먼저 열어야합니다.
또는 CPAN의 LockFile::Simple을 사용할 수 있습니다.

+0

yaml 파일을 무리로 잠글 수있는 방법은 무엇입니까? 파일 핸들이 필요하지 않습니까? –

+0

@Sandra : YAML :: Syck의 LoadFile()은 파일 이름이나 파일 핸들을 사용합니다. 함수를 호출하기 전에 파일을 열어 놓은 다음, LoadFile에 핸들을 전달하십시오. 그러나 다른 프로세스에서도 flock을 사용하지 않는 한 다른 프로세스가 파일을 읽거나 쓰지 못하도록하지는 않습니다. – runrig

1

다른 사람들이 말했듯이 flock을 사용하십시오. 또한 "파일을 잠글 수있는 방법"에서 perlfaq5을 참조하십시오.

사실은 .yaml 파일을 잠글 필요가 없으므로 자문 잠금을 사용하는 것이 중요합니다. 잠금 파일 (아마 yourfile.yaml.lock)을 잠그고 완료되면 잠금을 해제 할 수 있습니다.

이렇게하면 독점 성을 단일 파일로 제한하는 것이 아니라 "이 작업 블록에 독점적 액세스가 필요합니다"라고 말할 수 있습니다.