首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Graphstream多线程- Java

Graphstream多线程- Java
EN

Stack Overflow用户
提问于 2013-07-22 18:43:10
回答 2查看 423关注 0票数 1

我对Java的线程世界比较陌生,需要一些帮助。我正在使用一种深度递归算法来构建一个基于Graphstream (http://graphstream-project.org/)库的图。但是,我遇到了Stackoverflow错误。我确信我的算法是正确的(我在小规模上进行了测试)。

我读到了关于线程的文章,以及线程是如何帮助你的。我的想法是为每个递归生成一个新的线程(可能会达到数百万:( )..这也会生成很多子图。最后,我将不得不将所有这些子图合并到一个线程中。你们认为这真的有助于摆脱堆栈溢出问题吗?或者你对我有什么其他的想法吗?谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-07-22 21:58:51

一般来说,您的想法称为MapReduce。谷歌搜索应该可以帮助你找到一个示例实现。

由于您的问题是堆栈溢出错误,请记住,您可以将每个递归重写为不会导致堆栈溢出错误的循环算法。

创建大量线程通常不是一个好主意。只需使用ThreadPoolExecutor服务即可。

票数 1
EN

Stack Overflow用户

发布于 2013-07-22 19:34:28

数以百万计的线程不是一种优雅的方式。在java.concurrent.Executor上启动Runnables,而不是线程。这样,您还可以摆脱Stackoverflow,并使算法在所有可用的处理器上并行运行。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17785502

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档