Runable runable=new Runable(){
public void run() {
...
}
};可以通过下面方式启动线程
1.
Thread t=new Thread(runable);
t.start();
2.
SwingUtilities.invokeLater(runable);
3.
java.awt.EventQueue.invokeLater(runable);这三种有什么区别了?
public void run() {
...
}
};可以通过下面方式启动线程
1.
Thread t=new Thread(runable);
t.start();
2.
SwingUtilities.invokeLater(runable);
3.
java.awt.EventQueue.invokeLater(runable);这三种有什么区别了?
而第一个是最后必须要调用的代码
第二个和第三个一样,用于和AWT/Swing UI逻辑交互。
第一个是在新的线程里运行,
后面的是在AWT/Swing的用户线程里运行。
大概是这样第一个是用于多线程,这些线程需要用户控制第二个和第三个是因为Swing不是线程安全的,因此弄了个工具类,相当于打补丁。。