O pthread_cond_wait (& cond_t, & mutex); desbloquear e, em seguida, bloquear o mutex?

Estou a usarpthread_cond_wait(&cond_t, &mutex); no meu programa e eu estou querendo saber por que essa função precisa como um segundo parâmetro uma variável mutex.

Opthread_cond_wait() desbloquear o mutex no início (início da execuçãopthread_cond_wait()) e depois bloqueado quando terminar (pouco antes de sairpthread_cond_wait())

questionAnswers(3)

yourAnswerToTheQuestion