Por que as funções de variável de condição pthreads exigem um mutex?

Eu estou lendopthread.h; as funções relacionadas à variável de condição (comopthread_cond_wait(3)) exigem um mutex como argumento. Por quê? Até onde eu sei, vou criar um mutexsomente usar como esse argumento? O que esse mutex deveria fazer?

questionAnswers(9)

yourAnswerToTheQuestion