下面通过代码给大家介绍java多线程通讯之wait notify的区别,具体内容如下所示:

class Res{
public String username;
public String sex;
}
class Out extends Thread{
Res res;
public Out(Res res){
this.res=res;
}
@Override
public void run() {
//写操作
int count=0;
while (true){
// synchronized (res.getClass()){
if(count==0){//偶数
res.username="小明";
res.sex="男";
} else {//奇数
res.username="小红";
res.sex="女";
}
count=(count+1)%2;
// }
}
}
}
class Input extends Thread{
Res res;
public Input(Res res){
this.res=res;
}
@Override
public void run() {
while (true){
// synchronized (res.getClass()){
System.out.println(res.username+","+res.sex);
// }
}
}
}
public class OutInputThread {
public static void main(String[] args) {
Res res = new Res();
Out out = new Out(res);
Input input = new Input(res);
out.start();
input.start();
}
}
小红,女
小红,女
小红,女
小红,女
小红,女
小红,女
小红,女
小红,女
小红,女