Java多线程中wait语句的具体使用技巧

Java多线程在使用的时候会有很多语句需要我们具体的学习,在这其中wait()就是其中的一个。当然我们需要不断的努力学习才能掌握这一个语句的应用,下面的代码会对你学习Java多线程有所帮助。

  1
2 class ThreadA {
3 public static void main(String[] args) {
4 ThreadB b=new ThreadB();
5 b.start();
6 System.out.println("b is start....");
7 synchronized(b){//同步,请求获得对象锁,如果是子线程先进入,则这里阻塞
8 try {
9 System.out.println("Waiting for b to complete...");
10 b.wait();//获得对象锁后,可以调用对象的wait方法,这个时候释放对象锁,自线程取得对象锁,进入工作
11 System.out.println("Completed.Now back to main thread");
12 }catch (InterruptedException e){}
13 }
14 System.out.println("Total is :"+b.total);
15 }
16
17 }
18
19 class ThreadB extends Thread {
20
21 int total;
22 public void run() {
23
24 synchronized(this){ //同步,请求获得对象锁,如果是主线程先进入,则这里阻塞
25 System.out.println("ThreadB is running..");
26 for (int i=0;i<100;i++ ){
27 total +=i;
28 System.out.println("total is "+total);
29 }
30 notify();
31 }
32 }
33 }
34

  以上就是对Java多线程的详细介绍,希望大家有所收获。

本文出自于:coach

上一篇:English trip -- VC(情景课) 7 A Shopping 购物


下一篇:net 连mysql奇怪问题