fcntl, flockfile 에 관하여
글쓴이: osanha / 작성시간: 월, 2009/01/19 - 3:55오후
POSIX 공유메모리 오브젝트를 이용해서 뭘 하고 있는 중인데요.
프로세스간 동기화를 위해 별도의 뮤텍스나 세마포어를 쓰지 않고 공유메모리 오브젝트의 File descriptor 을 이용해서 fcntl 이나 flockfile/funlockfile 로 동기화를 하고 있습니다.
(동일 쓰레드에서의 락이 허용되어야 하고 프로세스 종료시 락이 풀려야 하기 때문)
처음엔 fcntl 로 lock, unlock 을 했었는데, 좀 찾아보니 fcntl 은 쓰레드 세이프하지 않는것 같더군요.
반면에 flockfile 은 지금 사용하는 동기화 용도에도 적합하고 쓰레드 세이프한것으로 나와서 그것으로 바꿔놨습니다만..
혹시, 제가 잘못 알고 있거나 필요한 내용에 대해 조언해주시면 감사하겠습니다.
Forums:
댓글 달기