我试图创建一个演示图形和算法的工具。为此,我找到了GraphStream库。我已经阅读了所有的文档和教程,但我不能让这一件事情起作用。我试图将图形放入我的自定义GUI(带按钮和右图空间的左菜单),并且我设法做到了这一点。现在,当我启用了两个按钮:生成 - 随机生成器创建图形,并清除 - 清除图形,这一切工作正常,但清除后,当我按下生成,我得到以下错误:GraphStream线程同步
Exception in thread "Thread-2" org.miv.pherd.IdAlreadyInUseException: a particle with the same identifier already exists (0)
我不明白为什么这是一个问题,因为在没有GUI我简单的测试程序,我做了简单的代码中主要做同样的事情,它的工作原理:
public class Test {
public static void main(String[] args){
Graph graph = new SingleGraph("test");
graph.display();
Generator generator = new BarabasiAlbertGenerator();
generator.addSink(graph);
generator.begin();
for (int i = 0; i < 100; i++) {
generator.nextEvents();
}
generator.end();
graph.clear();
generator = new BarabasiAlbertGenerator();
generator.addSink(graph);
generator.begin();
for (int i = 0; i < 100; i++) {
generator.nextEvents();
}
generator.end();
}
此代码的工作,但是当我的按钮我的GUI中执行它,我抛出错误我上面已经提到过。我还检查了我的程序中有多少个线程正在运行,看起来有三个线程在运行。我希望我的问题很清楚,有人可以帮助我。谢谢你们!
网络搜索快速导致http://sympa.litislab.fr/sympa/arc/graphstream-users/2013-09/msg00003.html - 你确定你正在使用一个版本,这个错误已被修复吗? – Marco13 2014-12-19 09:49:37
看到帖子,但没有看到昨晚的建立,非常感谢你! :d – user2740217 2014-12-19 10:06:07