![Solaris OS를 포함하여 동일한 프로세스의 다른 주제에서 파일 잠금](https://linux55.com/image/202188/Solaris%20OS%EB%A5%BC%20%ED%8F%AC%ED%95%A8%ED%95%98%EC%97%AC%20%EB%8F%99%EC%9D%BC%ED%95%9C%20%ED%94%84%EB%A1%9C%EC%84%B8%EC%8A%A4%EC%9D%98%20%EB%8B%A4%EB%A5%B8%20%EC%A3%BC%EC%A0%9C%EC%97%90%EC%84%9C%20%ED%8C%8C%EC%9D%BC%20%EC%9E%A0%EA%B8%88.png)
다음 요구 사항에 따라 C/C++ 코드에서 파일에 액세스할 때 파일 잠금을 수행해야 합니다.
- 서로 다른 프로세스뿐만 아니라 동일한 프로세스의 서로 다른 스레드에서도 접근이 발생할 경우 차단해야 함
- Linux 및 Solaris 운영 체제에서 작동해야 합니다.
내가 찾은포캉트르(열린 파일 설명 잠금(POSIX 아님)) 및그룹, 첫 번째 요구 사항을 충족합니다. 불행하게도 이러한 API는 Solaris에 없습니다.
내 임무를 완수하는 가장 좋은 방법은 무엇입니까? 파일에 동시 쓰기를 방지하는 기능을 사용하고 싶습니다. 스레드를 동기화하는 데 뮤텍스를 사용하지 말고 프로세스를 동기화하는 데 fcntl(예:)을 사용하지 마세요.