tion is thrown while
another thread has concurrently tried to reduce the size of the pool,
the number of threads running in the pool may be smaller than it was
when this procedure was called.  Where min-threads is 0, in certain
circumstances after an exception where no new threads can be started,
the pool could have no running threads in it (so that
thread-pool-get-num-threads returns 0) even though some tasks
previously added to the pool remain pending.  If the system can start
no new threads even though n