What does 'Thread termination due to failure' refer to?
The javadoc for ExecutorService sometimes refers to the case when a Thread terminates 'due to failure'. However, it is not clear what kind of failure does this refer to. For instance, the single thread executor documentation says that if this single thread terminates due to a failure during execution prior to shutdown, a new one will take its place if needed to execute subsequent tasks I would have thought that this situation might happen in case of an Exception, or maybe a RuntimeException , but it does not seem to be the case. Running the following code seems to be giving the same thread