Java语言从其诞生到现在不过短短五年时间却已经成为全球最热门的语言Java程序员正成为IT业其它程序员中薪金最高的职员这一切都应归功于Java良好的特性简单面向对象分布式平台无关性可移植性支持多线程等等本文将用Java的多线程特性来实现线程等待提示框
问题的提出
在Java应用程序编程中有时需要在GUI(图形化用户界面)中处理一些占用系统资源较多耗费时间较长的事务例如与数据库进行大批量数据交换大数据量的复杂运算远程连接服务器等等系统在处理这些事务时如果还是使用GUI所在的线程会导致界面冻结无法刷新看起来好象系统已经崩溃这是一个良好的软件系统不允许出现的局面
解决问题的途径
解决上述问题的方法就是采用Java的多线程特性为这些耗时又耗资源的事务再开一个线程单独运行并在GUI处出现提示框正在执行请等待在线程结束时自动关闭该提示框这样即避免了上面出现的界面冻结情况又保证了线程的安全性是软件开发者上佳的选择
具体实现
()例子
这里举一个简单的例子来介绍如何用JAVA实现线程等待提示框
此例实现一个很简单的GUI根窗体testFrame是一个JFrame(框架)类在testFrame中放置一个JPanel(面板)testPanel 最后将一个JButton(按钮)testButton添加到testPanel中
按下testButton系统开始运行一个模拟的耗时又耗资源的事务在标准输出设备上显示从到同时出现线程正在运行提示框一旦事务完成(即线程结束)系统自动关闭该提示框
()实现方法
为了达到上述功能可以这样来实现
当按下按钮后启动一个新的线程来完成事务即在标准输出设备上显示从到(在代码中通过TestThread类来实现)紧接着再启动一个线程来显示线程正在运行提示框(在代码中通过ThreadDiag类来实现)
为了使提示框在TestThread结束后自行关闭在TestThread启动后还启动了一个DisposeDiag线程这个线程专门用来等待TestThread线程结束后关闭线程正在运行提示框
[] [] [] []