title: Do we need to unlocking a mutex after recived a signal from cond variable?
body: <p>I making an app in C for educational purposes with mutexes and conditional variables.</p>
  
  <p>Short example here:</p>
  
  <pre><code>while (!(is_done == 0))         
      pthread_cond_wait(&amp;cond, &amp;mutex);
  
   pthread_mutex_unlock(&amp;mutex); 
  </code></pre>
  
  <p>Can you explain me, why after "while" statment (and recived signal from second thread) we need to unlock the mutex, when signal makes that mutex is locked? </p>
  
  <p>I get it from a lot examples from web, but when i want to work with mutex after reciving signal, do i need to unlocking mutex? Ofc i want to work on this thread after reciving signal </p>