본문 바로가기

프로그래밍260

자바의 정석 기초편 코드 분석 136(예제 13-12) [ ] 자바의 정석 기초편 카테고리 chapter 13 쓰레드 chapter 13-32 synchronized를 이용한 동기화 예제1 예제 13-12 [ ] 코드 분석 1. 원본 코드 class Ex13_12 { public static void main(String args[]) { Runnable r = new RunnableEx12(); new Thread(r).start(); // ThreadGroup에 의해 참조되므로 gc대상이 아니다. new Thread(r).start(); // ThreadGroup에 의해 참조되므로 gc대상이 아니다. } } class Account { private int balane = 1000; public int getBalance() { return balance.. 2023. 9. 26.
자바의 정석 기초편 코드 분석 135(예제 13-11) [ ] 자바의 정석 기초편 카테고리 chapter 13 쓰레드 chapter 13-29 join()과 yield() 예제 예제 13-11 [ ] 코드 분석 1. 원본 코드 class Ex13_11 { static long startTime = 0; public static void main(String args[]) { ThreadEx11_1 th1 = new ThreadEx11_1(); ThreadEx11_2 th2 = new ThreadEx11_2(); th1.start(); th2.start(); startTime = System.currentTimeMillis(); try { th1.join(); // main쓰레드가 th1의 작업이 끝날 때까지 기다린다. th2.join(); // main쓰레드.. 2023. 9. 26.
자바의 정석 기초편 코드 분석 134(예제 13-10) [ ] 자바의 정석 기초편 카테고리 chapter 13 쓰레드 chapter 13-27 suspend(), resume(), stop() 예제 예제 13-10 [ ] 코드 분석 1. 원본 코드 class Ex13_10 { public static void main(String args[]) { RunImplEx10 r = new RunImplEx10(); Thread th1 = new Thread(r, "*"); Thread th2 = new Thread(r, "**"); Thread th3 = new Thread(r, "***"); th1.start(); th2.start(); th3.start(); try { Thread.sleep(2000); th1.suspend();// 쓰레드 th1을 잠시 중단.. 2023. 9. 26.
자바의 정석 기초편 코드 분석 133(예제 13-9) [ ] 자바의 정석 기초편 카테고리 chapter 13 쓰레드 chapter 13-25 Interrupt() 예제 예제 13-9 [ ] 코드 분석 1. 원본 코드 import javax.swing.JOptionPane; class Ex13_9 { public static void main(String[] args) throws Exception { ThreadEx9_1 th1 = new ThreadEx9_1(); th1.start(); String input = JOptionPane.showInputDialog("아무 값이나 입력하세요."); System.out.println("입력하신 값은 " + input + "입니다."); th1.interrupt(); // interrupt()를 호출하면, int.. 2023. 9. 25.