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線程運行?但不能確認。
你能更多地討論你的問題? –
添加代碼片段 –