일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- html id
- #C++ has~a
- git flow
- html video
- #C++ 연산자함수오버로딩
- border-box
- 토큰경제
- #android activity
- #1차원배열
- #binary
- #JAVASCRIPT
- #다차원포인터
- html object
- relative path
- html youtube
- html5 new tag
- hyperledger transaction
- 하이퍼레저패브릭
- #성적관리프로그램
- #3차원배열
- mac terminal command
- html code
- #자바상속#자바이즈어#is~a
- html plug-in
- #CallByAddress
- #2차원배열
- #bubbleSort
- html charset
- docker example
- html multimedia
Archives
- Today
- Total
A sentimental robot
Thread Synchronization 본문
public class Test01 implements Runnable {
private int pay;
public Test01() {
pay = 10000;
}
@Override
public synchronized void run() {
for(int i=0; pay!=0 ;i++){
try{
Thread.sleep(1000);
pay-=1000;
System.out.print(Thread.currentThread().getName());
System.out.println(" 현재금액 : " +pay);
// 이 두 개의 메소드는 동기화 처리에서만 사용가능
notify(); // son Thread에게 넘겨줌
wait(); // wait를 나중에 선언, mom Thread는 멈춤
}catch(InterruptedException e){
e.printStackTrace();
}
}
}
public static void main(String[] args) {
Test01 th = new Test01();
Thread mom = new Thread(th,"Mom"); // 두 개의 스레드가 하나의 자원(th) 공유
Thread son = new Thread(th,"Son");
mom.start();
son.start();
}
}
'Java' 카테고리의 다른 글
Map (0) | 2017.12.29 |
---|---|
Exception Handling (0) | 2017.12.29 |
Thread (0) | 2017.12.29 |
Inner class (0) | 2017.12.29 |
Interface (0) | 2017.12.29 |