3
我正在运行java8应用程序,它看起来像一旦主线程退出,进程将退出。主线程会退出异步任务吗?
我使用completableFuture启动异步任务,像下面的
CompletableFuture cf = CompletableFuture.supplyAsync(() -> task.call());
cf.thenRunAsync(() -> {
try {
System.out.println(Thread.currentThread());
System.out.println((Double)cf.get() * 4.0);
} catch (InterruptedException e) {
e.printStackTrace();
} catch (ExecutionException e) {
e.printStackTrace();
}
});
我希望异步运行作为一个独立的线程,所以主线程退出应该不会导致进程退出,但事实证明并非如此。
我猜异步作业是作为deamon线程运行?但不能确认。
你能更多地讨论你的问题? –
添加代码片段 –