多线程学习--案例-子线程循环10次,接着主线程循环100,接着又回到子线程循环10次,接着再回到主线程又循环100,如此循环50次

来源:互联网 发布:淘宝投诉怎么撤销 编辑:程序博客网 时间:2024/06/05 17:30

子线程循环10次,接着主线程循环100,接着又回到子线程循环10次,接着再回到主线程又循环100,如此循环50次,请写出程序。 


package Demo4;


public class ThreadTestWaitNotify {
static boolean count=false;
public static void main(String args[]){
new Thread(new Runnable() {
@Override
public void run() {
for(int j=0;j<50;j++){
synchronized (ThreadTestWaitNotify.class) {
if(count){
try {
ThreadTestWaitNotify.class.wait();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
for(int i=0;i<10;i++){
System.out.println("1"+Thread.currentThread().getName()+"i"+i+"j"+j);
}
count=true;
ThreadTestWaitNotify.class.notify();
}
}

}
}).start();
for(int k=0;k<50;k++){
synchronized (ThreadTestWaitNotify.class) {
if(!count){
try {
ThreadTestWaitNotify.class.wait();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
for(int m=0;m<5;m++){
System.out.println("2"+Thread.currentThread().getName()+"m"+m+"k"+k);
}
count=false;
ThreadTestWaitNotify.class.notify();
}
}
}
}

0 0