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);这三种有什么区别了?
解决方案 »
- [求助]最近小弟在开发一个程序但出现数据库死锁问题
- 白痴问题:请问装tomcat时为什么需要安装jdk啊?
- 大家看看我这样用映射机制怎么样
- 各位大虾给个继续建议,刚学完J2SE
- jasper报表问题,帮帮忙!!!!!
- 对Applet 有没有好一点的,快速一点的掌握方法!不是急于求成,想请教一点经验!比较急切!在线等!
- 我这段程序的功能为什么不能实现??
- 请问如何定义一个event的处理函数,才能指向硬盘上的一个文件,并运行它?
- 怎么都不照顾java小兄弟呢?
- 看了two weeks Thinking in java,看不大懂啊!
- 请问这几句是什么意思呢?
- (输入输出)与对方机器返回信息的问题!~!
而第一个是最后必须要调用的代码
第二个和第三个一样,用于和AWT/Swing UI逻辑交互。
第一个是在新的线程里运行,
后面的是在AWT/Swing的用户线程里运行。
大概是这样第一个是用于多线程,这些线程需要用户控制第二个和第三个是因为Swing不是线程安全的,因此弄了个工具类,相当于打补丁。。