title: When should I use semaphores?
body: <p>When would one use semaphores ?</p>
  
  <p>Only example I can think of is limiting the number of threads accessing the same data/code simultaneously...  </p>
  
  <p>Any other scenarios in which semaphores would be the best solution ? </p>