两个线程交替打印1到100
Posted INEFFABLE LAND
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了两个线程交替打印1到100相关的知识,希望对你有一定的参考价值。
package com.zs.thread;
import java.util.concurrent.TimeUnit;
public class SumThread {
public void one() throws InterruptedException{
synchronized (this) {
boolean flag = true;
while (flag) {
for(int i = 1; i <= 99;i += 2){
System.out.println(i);
if(i==99){
flag = false;
this.notify();
break;
}
this.notify();
this.wait();
}
}
}
}
public void two() throws InterruptedException{
synchronized (this) {
boolean flag = true;
while (flag) {
for(int i = 2; i <= 100;i += 2){
System.out.println(i);
if(i==100){
flag = false;
this.notify();
break;
}
this.notify();
this.wait();
}
}
}
}
public static void main(String[] args) throws Exception {
SumThread sumThread = new SumThread();
new Thread(()->{
try {
sumThread.one();
} catch (Exception e) {
e.printStackTrace();
}
}).start();
TimeUnit.SECONDS.sleep(1);
new Thread(()->{
try {
sumThread.two();
} catch (Exception e) {
e.printStackTrace();
}
}).start();
}
}
以上是关于两个线程交替打印1到100的主要内容,如果未能解决你的问题,请参考以下文章