docs: def shrink(self, amount):
          """Kill off worker threads (not below self.min)."""
          # Grow/shrink the pool if necessary.
          # Remove any dead threads from our list
          for t in self._threads:
              if not t.isAlive():
                  self._threads.remove(t)
                  amount -= 1
          
          if amount > 0:
              for i in range(min(amount, len(self._threads) - self.min)):
                  # Put a number of shutdown requests on the queue equal
                  # to 'amount'. Once each of those is processed by a worker,
                  # that worker will terminate and be culled from our list
                  # in self.put.
                  self._queue.put(_SHUTDOWNREQUEST)