Subj : Re: why my threads do not wake up To : comp.programming.threads From : Jingbo Date : Wed Aug 24 2005 10:53 am DS, I do not think you understand pthread_cond_wait correctly. It will not wake up until pthread_cond_signal or pthread_cond_broadcase is called on that condition variable that it is waiting on. If there is anything wrong about pthread_cond_wait, then it can not wake up no matter what you did to it, including attaching to the process. So the problem is that, the threads can be waken up but they are not scheduled on any CPU. Attaching the process can put them on CPU. I was trying to debug my program, but could not find anything wrong. Those threads are put on pthread_cond_wait when the task queue is empty. But later they never got chance to wake up. I still think it is Solaris problem. My program runs fine on a Linux machine with 8 CPU's. That is another evidence that the logic in my program is correct. .