Java / Java Multithreading
Best practice for "DO Nothing" Strategy for InterruptedException.
try { while (true) { Thread.sleep(2000); } } catch (InterruptedException swallowedTheException) { /* BAD PRACTICE */ }
Instead re-interrupt the thread by calling interrupt() method. Because when the sleep() blocking method sniffs an interruption and throws InterruptedException, it clears the interrupted status.
try { while (true) { Thread.sleep(2000); } } catch (InterruptedException notSwallowedTheException) { // Restore the interrupted status Thread.currentThread().interrupt(); }
More Related questions...