Java Object Class final void wait(long ms)方法,包含示例
JavaObjectClassfinalvoidwait(longms)
在java.lang.Object.wait(longms)中可以使用此方法。
此方法使当前线程等待指定的时间,直到通过调用对象的notify()或notifyAll()方法发出另一个线程通知为止。
当其他线程中断当前线程时,此方法将引发InterruptedException。
此方法是最终方法,因此无法覆盖。
该方法将给出的时间以毫秒为单位。
语法:
final void wait(long ms){
}参数:
我们可以在Object类的方法中将一个对象(线程必须等待多长时间,即必须提到毫秒)作为参数传递。
返回值:
该方法的返回类型为空,这意味着该方法在执行后不返回任何内容。
Java程序演示对象类wait(longms)方法的示例
import java.lang.Object;
public class Thread1 {
public static void main(String[] args) throws InterruptedException {
//创建一个Thread2对象
Thread2 t2 = new Thread2();
//通过调用start(),线程start()将执行
t2.start();
Thread.sleep(1000);
synchronized(t2) {
System.out.println("Main thread trying to call wait()");
//通过调用wait()使当前线程等待
//持续1000毫秒,直到另一个线程通知
t2.wait(1000);
System.out.println("Main Thread get notification here");
System.out.println(t2.total);
}
}
}
class Thread2 extends Thread {
int total = 0;
public void run() {
synchronized(this) {
System.out.println("Thread t2 starts notification");
for (int i = 0; i < 50; ++i) {
total = total + i;
}
System.out.println("Thread t2 trying to given notification");
this.notify();
}
}
}输出结果
D:\Programs>javac Thread1.java D:\Programs>java Thread1 Thread t2 starts notification Thread t2 trying to given notification Main thread trying to call wait()Main Thread get notification here 1225
热门推荐
10 春节虎年爸妈祝福语简短
11 寿宴祝福语蛋糕文案简短
12 自己生日祝福语段子简短
13 虎年新年经典祝福语简短
14 男生儿子生日祝福语简短
15 新房入住文案祝福语简短
16 有趣同事离职祝福语简短
17 辞职发给公司祝福语简短
18 病人祝福语老师寄语简短