Я только начал учиться, используя CompletableFuture
.Мне интересно, почему приведенный ниже код ведет себя немного странно:
public static void main(String[] args) {
int coreCount = Runtime.getRuntime().availableProcessors();
ExecutorService service = Executors.newFixedThreadPool(coreCount);
CompletableFuture.supplyAsync(getStringSupplier(),service)
.thenAcceptAsync(getStringConsumer(),service);
System.out.println(" running main thread");
service.shutdown();
}
В приведенном выше коде иногда метод getStringConsumer()
не выполняется.Кто-нибудь может объяснить, пожалуйста, что я здесь делаю неправильно?