首页 > 编程语言 > 详细

多线程顺序的控制(wait,notity,sleep)

时间:2014-05-17 18:39:22      阅读:487      评论:0      收藏:0      [点我收藏+]

public class abc extends Thread{
    private Object prev=null;
    private Object self=null;
    private String msg=null;
    public abc(Object prev,Object self,String msg){
        this.prev=prev;
        this.self=self;
        this.msg=msg;
    }
    public void run(){
        int count=0;
        while(count<1000){
            synchronized(prev){
                synchronized(self){
                    System.out.print(msg);
                    if(msg.contains("C"))
                        System.out.println();
                    count++;
                    self.notify();
                }
                if(count==1000)
                break;
                try{
                    prev.wait();}
                catch(Exception e)
                    {e.getMessage();}
            }
            
        }
        
    }
    public static void main(String[] args){
        Object a=new Object();
        Object b=new Object();
        Object c=new Object();
        abc abc1=new abc(c,a,"A");
        abc abc2=new abc(a,b,"B");
        abc abc3=new abc(b,c,"C");
        try{
        abc1.start();Thread.sleep(100);}catch(Exception e){e.getMessage();}
        try{
        abc2.start();Thread.sleep(100);}catch(Exception e){e.getMessage();}
        abc3.start();
    }
}

多线程顺序的控制(wait,notity,sleep),布布扣,bubuko.com

多线程顺序的控制(wait,notity,sleep)

原文:http://www.cnblogs.com/heysong/p/3733477.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!