class Buffer{
private int money = 100000;
synchronized int paymoney(int pay) {
money -= pay;
return money;
}
int getmoney(){
return money;
}
}
class man extends Thread {
Buffer b;
int pay;
man(String Name, Buffer b, int money){
super(Name);
this.b = b;
this.pay = money;
}
public void run(){
while(true){
synchronized(b){
if(b.getmoney() - pay < 50000){
System.out.println(getName()+ ",출금 불가 = " + pay +", 통장잔액 =" + b.getmoney());
break;
}
else {
b.paymoney(pay);
System.out.println(getName()+ ",출금 = " + pay +", 통장잔액 =" + b.getmoney());
}
}
}
}
}
public class 과제2번 {
public static void main(String[] args){
Buffer b = new Buffer();
man c1 = new man("쓰레드1", b , 10000);
man c2 = new man("쓰레드2", b , 5000);
c1.start();
c2.start();
}
}
이렇게 나오는데
질문있습니다.
우선순위를 주지 않고 교대로 출금을 하게 하려면 어떻게 해야되는 건가요? 아무리해도 안되네요. 도움 요청드립니다.