package com.ljh.test;
public class Main {
public static void main(String[] args) {
Demo demo = new Demo();
Thread t1 = new Thread(demo);
Thread t2 = new Thread(demo,"=================");
t1.start();
t2.start();
}
}
class Demo implements Runnable {
private Boolean flag = true;
public void run() {
while (true) {
if (flag)
try {
five();
} catch (Exception e) {
e.printStackTrace();
}
else
try {
ten();
} catch (Exception e) {
e.printStackTrace();
}
}
}
public synchronized void five() throws Exception {
if (flag) {
Thread.sleep(200);
for (int i = 1; i <= 5; i++) {
System.out.println(Thread.currentThread().getName() + " 第i "
+ i + "次");
}
flag = false;
this.notify();
this.wait();
}
}
public synchronized void ten() throws Exception {
if (!flag) {
Thread.sleep(200);
for (int j = 1; j <= 10; j++) {
System.out.println(Thread.currentThread().getName() + " 第j "
+ j + "次");
}
flag = true;
this.notify();
this.wait();
}
}
}
java线程通讯
最新推荐文章于 2025-08-08 22:01:10 发布