I'm implementing a thread with a task queue. As soon as as the first task is added to the queue the thread starts running it.
Should I use pthread condition variable to wake up the thread or there is more appropriate mechanism?
If I call pthread_cond_signal()
when the other thread is not blocked by pthread_cond_wait()
but rather doing something, what happens? Will the signal be lost?