java 同步通信互斥锁

package test.run;

public class TraditionalThreadCommunication {

private Business bus = new Business();

public static void main(String[] args) {
final TraditionalThreadCommunication a=new TraditionalThreadCommunication();

new Thread(new Runnable() {

public void run() {
for(int i=1;i<=50;i++){
a.bus.sub(i);
}
}
}).start();
for(int i=1;i<=50;i++){
a.bus.maina(i);
}

}

class Business{
private boolean bS = true;
public synchronized void sub(int i ) {
while(!bS){
try {
this.wait();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}
for(int j=1 ; j<10; j++){
System.out.println(“子线程”+j+”循环次数:”+i);
}
bS = false;
this.notify();
}
public synchronized void maina(int i ) {
while(bS){
try {
this.wait();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

for(int j=1 ; j<20; j++){
System.out.println(“父线程”+j+”循环次数:”+i);
}
bS = true;
this.notify();
}
}
}

    原文作者:Jessi_JIA
    原文地址: http://www.cnblogs.com/jessi/p/5521048.html
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞