gpt4 book ai didi

java - Java 8 中的 completableFuture 是否可以扩展到多核?

转载 作者:搜寻专家 更新时间:2023-11-01 04:05:35 25 4
gpt4 key购买 nike

假设我有一个线程调用一堆返回 completablefuture 的方法,然后说我将它们全部添加到列表中,最后我执行 completablefutures.allof(list_size).join()。现在列表中的 future 可以扩展到多个核心吗?换句话说, future 是否被安排到多个内核中以利用并行性?

最佳答案

CompletableFuture 表示与某些 Executor 关联的任务.如果你没有明确指定执行器(例如,你使用 CompletableFuture.supplyAsync(Supplier) 而不是 CompletableFuture.supplyAsync(Supplier, Executor)) ,那么普通的 ForkJoinPool 被用作执行器。这个池可以通过 ForkJoinPool.commonPool() 获得,默认情况下它创建与您的系统拥有的硬件线程一样多的线程(通常是核心数,如果您的核心支持超线程,则将其加倍)。所以一般来说,是的,如果您使用所有默认值,那么多个核心将用于您可完成的 future 。

关于java - Java 8 中的 completableFuture 是否可以扩展到多核?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37582196/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com