title: Why lock may become a bottleneck of multithreaded program?
body: <p>Why lock may become a bottleneck of multithreaded program?</p>
  
  <p>If I want my queue frequently pop() and push() by multithread,</p>
  
  <p>which lock should I use?</p>