- 设置标志位flag
- 当flag==1时,打印A
- 当flag==2时,打印B
- 当flag==3时,打印C
- 用count控制打印的次数,题目要求打印5遍,即15个字符
- 这里的用notifyAll()的原因:是要把其余两个全都唤醒,因为如果用notify(),它是二选一唤醒,不确定它是否会唤醒我们所需要的
- run()方法里的代码是判断确定打印某个字符,即:当与线程名称一样时,则打印
class Print {
private int flag = 1;
private int count = 0;
public int getCount() {
return count;
}
public synchronized void printA() {
while (flag != 1) { //不为1,所以打印A的线程等