7

我想了解Java的多核处理。据我了解,这Threading是一种多核,我觉得我掌握得很好。我知道还有其他方法可以进行多核处理,但我不知道它们是什么。有谁知道任何好的简单教程/示例,或者有他们自己的,我可以查看以了解更多关于 Java 中的多核处理的信息?

我发现的所有教程都对图表、图形、背景信息等过于深入,这真的不是我学习编程的风格。我最好喜欢快速简单的东西。

4

3 回答 3

8

使用多核的主要方式是使用多线程。如果通过您应该熟悉的高级并发对象来使用这些最简单的方法。这使用线程,但您不必直接处理它们。

另一种方式是使用多进程,但这是使用多线程的间接方式。

你可能会觉得这个库很有趣。Java Thread Affinity它允许您将线程分配给套接字、内核或 CPU。

于 2013-01-03T16:06:17.120 回答
3

这是 Oracle 关于 Java 7 fork/join 框架的教程

http://docs.oracle.com/javase/tutorial/essential/concurrency/forkjoin.html

于 2013-01-03T16:07:39.890 回答
0

除了提到的作为 Java 实现的一部分的高级并发对象(应该在那里添加 fork/join)之外,还有许多库和框架。谷歌搜索“actor framework”、“dataflow framework”、mapreduce、“scientific dataflow”。数据流模型是主流,所有其他都是它的变体(例如,actor - 具有单个输入端口的数据流节点,mapreduce - 由需求创建的持久分布式actor等)。最小的数据流框架(在机器集群上没有持久性或分布)是我的df4j库。

于 2013-01-03T16:50:16.037 回答