Some of my users have been reporting IllegalThreadStateExceptions, which lead back to the following code. I was unable to recreate it, and most people are able to execute this part of the code with no issues.
The code is re-executed periodically, so the old thread should be replaced by a new one and started, but that's where the error occurs.

if (head.threadSeal != null) { head.threadSeal.interrupt(); } head.threadSeal = new ThreadFindSeal(); head.threadSeal.start(); // IllegalThreadStateException here Relevant stack trace:

java.lang.IllegalThreadStateException at java.lang.Thread.start( Am I missing something in the documentation, why would start ever fail on a new thread?

Check Solution