【发布时间】:2012-02-11 10:32:51
【问题描述】:
我们正在调用 Web 服务来收集包含大约 1500 个节点的图的信息。我们在Prefuse 中显示图表,同时它不断添加节点和边。大多数情况下,这似乎工作得很好,但每隔一段时间,整个应用程序就会冻结,唯一的恢复方法是终止应用程序并重新开始。发生这种情况时不会打印出任何异常。在其他情况下,我确实经常看到“IllegalArgumentException:无效的行索引:-1”,但这似乎与应用程序的冻结无关。
我看到了一个关于freezing in applets 的相关问题,但是我们的应用程序运行在 JFrame 中,而不是小程序中。以防万一这是我们的问题,我们尝试在代码的不同位置调用 ActivityManager.stopThread()(找不到 kill 方法)。这似乎没有太大区别。
prefuse 在编辑图表时是否有线程安全的方式来显示图表?
【问题讨论】:
-
您可能还需要显示一些代码。
-
您是否尝试按照该线程中的建议调用
kill()? -
不再有kill方法。我只是猜测它已被 stopThread() 取代。
-
@Viruzzo 好点。我会看看我是否可以创建一个展示相同行为的简单示例。
-
@JayAskren:您可以尝试使用here 引用的一种方法来查找 EDT 违规。
标签: java visualization prefuse