具有CompletableFuture的Java 8线程:在SupplySync()之后关闭?

具有CompletableFuture的Java 8线程:在SupplySync()之后关闭?,java,Java,假设我正在运行一个异步线程,如下所示 SubmissionSupplier supplier = new SubmissionSupplier(); SubmissionConsumer consumer = new SubmissionConsumer(); CompletableFuture<Void> completableFuture = CompletableFuture.supplyAsync(supplier).thenAccept(consumer); //

假设我正在运行一个异步线程,如下所示

SubmissionSupplier supplier = new SubmissionSupplier();
SubmissionConsumer consumer = new SubmissionConsumer();
CompletableFuture<Void> completableFuture = 
   CompletableFuture.supplyAsync(supplier).thenAccept(consumer);
// END, No further code
SubmissionSupplier=新的SubmissionSupplier();
SubmissionConsumer=新SubmissionConsumer();
CompletableFuture CompletableFuture=
CompletableFuture.supplyAsync(供应商),然后Accept(消费者);
//结束,没有进一步的代码

在执行此块后,是否需要关闭以防止内存泄漏?当我使用ExecutorService时,我必须执行
service.shutdown()。如果未向
supplyAsync
提供执行器,则它将使用不需要启动或停止的。事实上,这是无法阻止的

这个水池是静态建造的;其运行状态不受尝试
shutdown()
shutdownNow()
的影响


您仍然可以在此处使用executor服务(
CompletableFuture.SupplySync(供应商,服务)
)。。。默认情况下使用fork-join池。