对于 Swing 应用程序,我们使用 EventQueue.invokeLater() 是否有原因? Thread.start()
不应该以同样的方式工作吗?
Thread.start 的另一个优点是我们有一种方法告诉线程中断,因为 EventQueue.invokeLater
没有为我们提供 Thread
对象。
最佳答案
您应该使用 EventQueue.invokeLater 进行所有 GUI 更新,因为 Swing 在某种程度上是单线程的。请参阅http://docs.oracle.com/javase/6/docs/api/javax/swing/package-summary.html#threading
您可以启动线程进行计算等,但应使用invokeLater 更新GUI。
关于java - EventQueue.invokeLater 与 Thread.start,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23271351/