当我通过调用ScheduledExecutorService.schedule()创建一个线程时,它在执行预定任务后永远不会终止。
例如,以下程序永远不会退出:
public static void main(String[] args) {
ScheduledFuture scheduledFuture =
Executors.newSingleThreadScheduledExecutor().schedule(new Callable() {
public Void call() {
doSomething();
return null;
}
}, 1, TimeUnit.SECONDS);
}
public static void doSomething() {
}
这是JDK的bug吗,还是我漏掉了什么?