package
javase2.Day5;
import
javase2.Day5.Table.Person;
/**
* 临界资源访问
* */
public class SyncDemo1 {
public static void main(String[] args) {
Table table = new Table();
Person p1 = table.new Person();
Person p2 = table.new Person();
p1.start();
p2.start();
}
}
www.atcpu.comclass Table {
int beans = 20;
public synchronized int getBean() {
if (beans == 0)
throw new RuntimeException("没了");
Thread.yield();
return beans--;
}
class Person extends Thread {
public void run() {
while (true) {
int bean = getBean();
System.out.println(getName() + "拿到:" + bean);
Thread.yield();
}
}
}
}