Java核心技术(多线程)五
来源:互联网 发布:mac 便签 放在桌面 编辑:程序博客网 时间:2024/06/07 16:20
线程与Swing
使用线程是为了提高程序的响应性能。当程序需要做某些耗时的工作时,应该启动另一个工作器线程而不是阻塞用户接口。Swing不是线程安全的,如果你试图在多个线程中操纵用户界面的元素,那么用户界面可能崩溃。将线程与Swing一起使用时,必须遵循:
*如果一个动作需要花费很长时间,在一个独立的工作器线程中做这件事不要在事件分配线程中做。
*除了事件分配线程,不要在任何线程中接触Swing组件。
应该使用EventQueue类的invokeLater和invokeAndWait方法使设置Swing界面的方法在事件分配线程中执行。invokeLater的方法立即返回,而run方法被异步执行;invokeAndWait方法等待直到run方法被确实执行过为止。
SwingWorker类是Swing工作器,是在专用线程中执行长时间GUI交互任务的抽象类。覆盖doInBackground方法来完成耗时的工作,不时地调用publish方法来报告工作进度。这一方法在工作器线程中执行。publish方法使得process方法在事件分配线程中执行来处理进度数据。当工作完成时,done方法在事件分配线程中被调用以便完成UI的更新。
- Java核心技术(多线程)五
- 《Java多线程编程核心技术》(五)定时器Timer的使用
- Java多线程核心技术(五):定时器Timer
- 《java 多线程编程核心技术》读书笔记五
- Java核心技术(多线程)一
- Java核心技术(多线程)二
- Java核心技术(多线程)三
- Java核心技术(多线程)四
- Java核心技术卷一(五)
- java基础的核心技术:多线程(一)
- java基础的核心技术:多线程(二)
- Java多线程编程核心技术(第一章笔记)
- Java多线程编程核心技术学习(一)
- Java多线程编程核心技术学习(二)
- Java 多线程核心技术梳理
- java多线程编程核心技术
- 《Java多线程编程核心技术》
- Java 多线程编程核心技术
- Multi IE Tester
- winform安装项目、安装包的制作、部署
- STL 头文件一览表
- 顺序列表的操作
- Aptana使用技巧不全
- Java核心技术(多线程)五
- 生活随笔:贪玩
- 编程之美2.14扩展问题1 求子数组和的最大值(首尾可以相连)
- mina too many files
- 比较全面的函数注释规范
- dataGridView移除多行
- 设置Eclise中的快捷键
- Qt4.7 arm编译
- VERSIONINFO Resource VS_VERSION_INFO