Java多线程在使用的时候会有很多语句需要我们具体的学习,在这其中wait()就是其中的一个。当然我们需要不断的努力学习才能掌握这一个语句的应用,下面的代码会对你学习Java <http://developer.51cto.com/art/200510/6983.htm%20%20>多线程有所帮助。
1.class ThreadA
2.{
3.public static void main(String[] args)
4.{
5.ThreadB b=new ThreadB();
6.b.start();
7.System.out.println("b is start....");
8.synchronized(b)//同步,请求获得对象锁,如果是子线程先进入,则这里阻塞
9.{
10.try
11.{
12.System.out.println("Waiting for b to complete...");
13.b.wait();//获得对象锁后,可以调用对象的wait方法,这个时候释放对象锁,自线程取得对象锁,进入工作
14.System.out.println("Completed.Now back to main thread");
15.}catch (InterruptedException e){}
16.}
17.System.out.println("Total is :"+b.total);
18.}
19.}
20.class ThreadB extends Thread
21.{
22.int total;
23.public void run()
24.{
25.synchronized(this) //同步,请求获得对象锁,如果是主线程先进入,则这里阻塞
26.{
27.System.out.println("ThreadB is running..");
28.for (int i=0;i<100;i++ )
29.{
30.total +=i;
31.System.out.println("total is "+total);
32.}
33.notify();
34.}
35.}
36.}
以上就是对Java多线程的详细介绍,希望大家有所收获。
Java多线程中wait语句的具体使用技巧
最新推荐文章于 2023-05-22 10:14:45 发布