>> Edit article
이름
제목
패스워드
: 제가 지금 다중 쓰레드 프로그래밍을 하고 있습니다. : : 다음과 같이 하고 있습니다. : pthread_mutex_lock(&lock); : while( 조건이 참일 동안 ) : pthread_cond_wait(&con,&lock); : pthread_mutex_unlock(&lock); : : 쓰레드가 10개 돌아 갈때, 조건에 맞는 쓰레드만이 cond_wait을 하고, : 그리고 나머지 쓰레드들 중에서 한 쓰레드가 : pthread_broadcase(&con)을 사용하여 cond_wait을 풀어주구여.. : 근데.. 너무 이상한 것이. 쓰레드가 wait을 하고 풀리고 : 잘 진행 되다가 어느 순간.. 멈춰 버립니다.. : deadlock 은 아닌 것 같구, 무한히 wait을 하는 것 같습니다. : 근데. 더 이상한 것은. 이렇게 되면.. 모드 스레드의 기능이 정지가 되죠. : 왜 그런걸 까요??? == 으흠.. 이렇게만 봐서는 잘 모르겠습니다. 저 코드만 봐서는 문제가 없는 것 같으니깐.. (으흠.. 기억이 가물가물..) 일단 추정하기로는 pthread_cond_broadcast() 앞뒤로 lock 를 잠그고 풀어주는 게 빠지지 않았나 싶군요. 예? 아니라고용? :( 크크..--Reiot, the Fallen Lord of MUDMANIA
Copyleft
1999-2026 by
JSBoard Open Project
Theme Designed by
IDOO
All right reserved