黑马程序员技术交流社区

标题: 问题为什么用r调用wait和notify [打印本页]

作者: 尉迟真金    时间: 2016-9-16 22:50
标题: 问题为什么用r调用wait和notify
public class Input implements Runnable {
        private Resource r ;
       
        public Input(Resource r){
                this.r = r;
        }
       
        public void run() {
                int i = 0 ;
                while(true){
                  synchronized(r){
                          //标记是true,等待
                            if(r.flag){
                                    try{r.wait();}catch(Exception ex){}
                            }
                          
                                if(i%2==0){
                                        r.name = "张三";
                                        r.sex = "男";
                                }else{
                                        r.name = "lisi";
                                        r.sex = "nv";
                                }
                                //将对方线程唤醒,标记改为true
                                r.flag = true;
                                r.notify();
                  }
                        i++;
                }
        }

}

作者: 一半的留言    时间: 2016-9-16 23:06
这个提供的代码不全,根本很难看出你的代码意图,但wait和notify都是Object类的方法,任何的对象都可以调用,但最好是和锁对象同一个,




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2