java 简单的进水放水
class Shui implements Runnable{
int a=0;
@Override
public void run() {
synchronized (this) {
while (true) {
String str= Thread.currentThread().getName();
if (str.equals("进水")) {
if (a>496) {
this.notify();
try {
this.wait();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
a+=5;
System.out.println("每秒进水5升水池还有"+a);
try {
Thread.sleep(100);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if (str.equals("放水")) {
if (a<2) {
this.notify();
try {
this.wait();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
a-=2;
System.out.println("每秒放水2升水池还有"+a);
try {
Thread.sleep(100);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}
}
public class work1 {
public static void main(String[] args) {
Shui sss=new Shui();
Thread t = new Thread(sss,"进水");
Thread t1 = new Thread(sss,"放水");
t.start();
t1.start();
}
}