Those would, if uncaught, exit run and leave the waiter to wait indefinitely for the number of active jobs to reach 0
Decrease the number of worker threads by one to account for the fact the calling thread acts as a worker thread now