OnJava8-Examples/concurrency/DaemonsDontRunFinally.java
2015-05-29 14:18:51 -07:00

30 lines
724 B
Java

//: concurrency/DaemonsDontRunFinally.java
// ©2015 MindView LLC: see Copyright.txt
// Daemon threads don't run the finally clause
import java.util.concurrent.*;
import static net.mindview.util.Print.*;
class ADaemon implements Runnable {
@Override
public void run() {
try {
print("Starting ADaemon");
TimeUnit.SECONDS.sleep(1);
} catch(InterruptedException e) {
print("Exiting via InterruptedException");
} finally {
print("This should always run?");
}
}
}
public class DaemonsDontRunFinally {
public static void main(String[] args) throws Exception {
Thread t = new Thread(new ADaemon());
t.setDaemon(true);
t.start();
}
} /* Output:
Starting ADaemon
*///:~