10.7. 并行编译


默认情况下,分发流会尝试并行化。最终用户可以控制这一点,实际上它们始终必须控制其中一个选项。这些流是并行化的方法。

从缓存集合创建 流到每个节点的本地,最终用户可以在调用流或 并行Stream 方法之间进行选择。https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html#stream--根据是否已选择并行流,将在本地为每个节点启用多个线程。请注意,一些操作(如重新哈希)了解迭代器和每个操作始终在本地使用顺序流。这在某个时间点上可以增强,以允许在本地并行流。

在使用本地并行性时,用户应小心,因为它需要有大量条目或操作可以更快地计算。另外,请注意,如果用户使用并行流,每个流 都不应该阻止操作,因为该操作将在通用池中执行,通常为计算操作保留。

当存在多个 节点时,可能需要控制远程请求是否同时处理,还是一次处理。默认情况下,除 iterator 外的所有终端操作都会执行并发请求。迭代器,可以降低本地节点上的总体内存压力的方法,仅执行实际执行稍好的连续请求。

如果用户希望更改此默认值,但可以通过调用 CacheStream 上的 sequentialDistributionparallelDistribution 方法来实现。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.