2014-12-17 12 views
0

Title. flock을 사용하여 이미 잠금 해제 된 파일의 잠금을 해제하려고하면 어떻게됩니까? 즉, 우리가 이미 flock (file, LOCK_UN)을 사용할 때 우리는 그것을 다시 사용하려고 시도합니다!flock을 사용하여 잠금 해제 된 파일의 잠금을 해제하려고하면 어떻게됩니까? C lang

C로 표시됩니다. 예기치 않은 동작입니까? 오류가 있습니까? 그것은 아무것도하지 않습니까?

감사합니다.

+1

@iharob (제안 된 편집 (http://stackoverflow.com/review/suggested-edits/6511153)를 통해) : 제목이 질문의 주요 부분을 묻고 질문 내부에 다시 ​​쓰여지면 그것을 제거하지 마십시오. 처음에는 질문을 볼 때 제목을 무시하기 쉽습니다. 질문의 시작 부분을 다시 말하면 괜찮습니다. (IE는 '제목'이라는 단어를 제거하면 훨씬 좋을 것입니다.하지만 전체 첫 문장을 제거하면 명확하지 않습니다.) – Pokechu22

+1

'man' 페이지가 어떤 일이 일어나는지 명시 적으로 밝히지 않으면 그것을 시도함으로써 쉽게 발견 할 수 있어야합니다. –

+0

@ Pokechu22 Ok 죄송합니다. 방금 불필요하다고 생각했지만 귀하의 주장은 훌륭합니다. –

답변

1

flock()은 BSD의 일부이며 그렇지 않은 경우 표준화되지 않았으며 BSD 설명서에 지정된 대로만 지정됩니다.

그러나 이것은 실제 커널 시스템이므로 사용자 공간 응용 프로그램의 일부에서 모든 유형의 오작동을 감지 할 수 있습니다. 이중 잠금 해제를 포함합니다.

잘 정의되었지만 널리 지원되지 않는 기능을 원하면 POSIX 'lockf()을 확인하십시오.