5

我想知道是否有人可以指出我在 java 中一个简单的等价于 python 的多处理模块。

我有一个简单的并行处理场景(其中没有 2 个进程交互):获取一个数据集并将其拆分为 12 个并将 java 方法应用于 12 个数据集,收集结果并将它们加入某种具有相同排序的列表中。

作为“专业”语言的 Java 似乎有多个库和方法——谁能帮助这个 Java 新手入门?

我想用最少的编码来做到这一点——正如我所说的,我的要求非常简单。

更新: 如何在 java 中进行多处理,以及预期的速度提升?

这似乎表明线程是要走的路。我希望我别无选择,只能涉入一堆船闸(双关语无意)并等待我的船航行。尽管如此,简单的例子还是受欢迎的。

4

1 回答 1

4

没有完全兼容的类,但ExecutorService为您提供了实现它所需的一切。

特别是,没有将 a 映射Callable到 a并等待结果的函数,但是您可以轻松地从 aCollection构建 a ,然后只需调用,它会返回 a 。Collection<Callable<T>>Callable<T>Collection<T>invokeAllList<Future<T>>

(如果您想从 中模拟其他一些函数multiprocessing.Pool,则需要循环submit并构建您自己的待处理事物集合。但这map很简单。)

于 2013-08-20T00:28:25.440 回答