
正文
java智能等待代码 java 等待
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
java中请问如何等待一个线程结束在运行其他的代码?
使用java的线程同步机制。
现在存在两个线程a和b,伪代码如下:
在a的代码中:
b.start();//启动b线程
synchronized(b) b.wait();//a线程中采用同步,并进行等待
c.execute();
在b线程结束时调用synchronized(this) notify();
这样就可以达到b不结束,a线程就不会继续执行c。
注释:如果看不明白建议先学习一下java线程同步机制。
相关问答
Q1: java怎么设置等待点击按钮
给你个简单的思路吧,你可以定义一个boolean变量,默认是false,当点下按钮以后,通过点击事件这个变量的值改成true;
private isRun =false;
pubilc void method(){
while(true){
if(isRun){
//执行你的代码
break;
}
}}
Q2: JAVA中如何设置等待时间(非线程)
java中使用用线程控制Task任务,启动下面的线程就可以了,new Thread(new Task()).start() ;public class
Task implements Runnable {//新建一个任务
private TextArea textArea;
public Task(TextArea textArea){
this.textArea = textArea;
}
public void run() {
while (true) {
this.textArea.setText("这里设置: 输出的一段文字");
try {
Thread.sleep(500); // 这里设置:隔多长时间
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
Q3: 用JAVA实现线程等待提示框[1]
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线程结束后 关闭 线程正在运行 提示框
lishixinzhi/Article/program/Java/gj/201311/27675
关于java智能等待代码和java 等待的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。





