У меня есть следующий код (более или менее):
ExecutorService executor = Executors.newFixedThreadPool(10);
CompletableFuture
.supplyAsync(()->{
return longRunningMethodThatReturnsBoolean();
}, executor)
.thenAcceptAsync(taskResult -> {
logResult();
executor.shutdown();
}, executor);
Это позволяет продолжить код в основном потоке, однако я ожидал, что основной поток умрет, когда он завершится, а будущее продолжит работу в своем собственном потоке, но основной поток остается живым до завершения CompletableFuture, даже если основной поток больше ничего не делаю.
Я новичок в этом, я что-то пропустил? Это вообще возможно?
Любая помощь будет оценена!!!
CompletableFuture
продолжал выполняться, пока процесс java завершается? Где тогда будет выполнятьсяCompletableFuture
? - person Didier L   schedule 02.02.2018