| [ CnUnix ] in KIDS 글 쓴 이(By): candor (깐돌) 날 짜 (Date): 2003년 3월 28일 금요일 오후 10시 34분 06초 제 목(Title): Re: [Q]pthread동기화 문제 먼저 답글을 주셔서 감사합니다. 제가 구현하고자 하는 것은 client로 부터 data를 받아서 file에 write하는 것인데 이때 client가 보낸 순서대로 file에 write해야 합니다. 이 작업을 위해서 5개의 thread가 있으며 trylock()처리 한 것입니다. writeLog1,2는 디버깅을 위해서추가한 코드이며 실제로는 사용되지 않습니다. writeLog1,2를 비교해볼때 lock처리 전후로 해서 data의 순서가 뒤바뀌는 경우가 발생한다는 것입니다. nanosleep 0.1초를 하면 에러가 나는데 0.01초로 하니까 에러가 나지 않았습니다.(좀더 테스트해봐야 할 사항입니다만) 제가 알고 싶은 것은 nanosleep의 시차조정말고 다른 방법이 없는가 하는 것입니다. 찾아보니 pthread_cond_signal()을 이용하면 되는 것 같기도한데 자세한 사용법을 아직 모르겠군요. thread 고수님들의 조언을 부탁드립니다. |