我们正在调用web服务来为一个大约有1500个节点的图收集信息。我们在Prefuse中显示图形,同时不断添加节点和边。大多数情况下,这似乎很有效,但每隔一段时间整个应用程序就会冻结,恢复的唯一方法就是杀死应用程序并重新开始。发生这种情况时,不会打印出任何异常。在其他情况下,我确实经常看到"IllegalArgumentException: Invalid row index:-1",但这似乎与应用程序冻结无关。
我看到了一个关于freezing in applets的相关问题,但我们的应用程序是在JFrame中运行的,而不是applet。为了防止这是我们的问题,我们尝试在代码中的不同位置调用ActivityManager.stopThread() (找不到kill方法)。这似乎没有太大的区别。
有没有一种线程安全的方式让prefuse在编辑图形的同时显示图形?
发布于 2012-01-17 01:12:50
在编辑图形时,有没有线程安全的方法来显示图形?
对GUI的所有更新都必须在EDT上完成。使用SwingWorker。
有关详细信息,请参阅Concurrency in Swing。
https://stackoverflow.com/questions/8880777
复制相似问题