pthread_cond_timedwait에서 ms단위의 wating 법.
글쓴이: muzie / 작성시간: 목, 2010/04/08 - 2:18오후
pthread_cond_timedwait 사용시에
초단위 미만으로 쉴때에 정상적으로 대기하지 않습니다.
평균적으로 10ms만 대기하고 나와버립니다.
ret값은 0이 아닌 값으로 signal을 받고 나오는게 아닌 타임오버로 나오는데 뭔가 잘못했는지요?
timespec의 설정값은 tv_sec는 gettimeofday 현재값으로부터 + 0,
tv_nsec는 현재 gettimeofday 현재값으로부터 tv_usec * 1000 (ns 단위이므로) 으로 줬습니다.
뭔가 놓친것이 있는지요?
답변 기다리겠습니다.
Forums:
아이고...
아이고... 삽질했네요. 자답합니다 -_-;
혹시나 저와 같은 실수를 하실분이 있을지도 모르니 적어둡니다.
timespec의 tv_sec 에는 timeval의 tv_sec 값을 넣어주고
timespec의 tv_nsec 에는 timeval의 tv_usec에 * 1000을 하고
예를들어 1000ms를 쉬고 싶다면 + 1000 * 1000 을 해야하는데 1000만 하고 앉았었군요 --;;;;
댓글 달기