title: What's the point of Semaphore.drainPermits()?
body: <p>public int drainPermits():</p>
  
  <blockquote>
    <p>Acquires and returns all permits that are immediately available. Returns: the number of permits acquired.</p>
  </blockquote>
  
  <p>Why would someone want to acquire and then immediately release all available permits from a Semaphore? If they want to see the number of available permits, why not use <code>Semaphore.availablePermits()</code>?</p>