본문 바로가기

코드각주16

자바의 정석 기초편 코드 분석 139(예제 13-15) [ ] 자바의 정석 기초편 카테고리 chapter 13 쓰레드 chapter 13-4 쓰레드의 구현과 실행 예제 예제 13-1 [ ] 코드 분석 1. 원본 코드 import java.util.ArrayList; class Customer implements Runnable { private Table table; private String food; Customer(Table table, String food) { this.table = table; this.food = food; } public void run() { while(true) { try { Thread.sleep(10);} catch(InterruptedException e) {} String name = Thread.currentThre.. 2023. 9. 26.
자바의 정석 기초편 코드 분석 138(예제 13-14) [ ] 자바의 정석 기초편 카테고리 chapter 13 쓰레드 chapter 13-35 wait()과 notify() 예제1 예제 13-14 [ ] 코드 분석 1. 원본 코드 import java.util.ArrayList; class Customer implements Runnable { private Table table; private String food; Customer(Table table, String food) { this.table = table; this.food = food; } public void run() { while(true) { try { Thread.sleep(10);} catch(InterruptedException e) {} String name = Thread.cur.. 2023. 9. 26.
자바의 정석 기초편 코드 분석 137(예제 13-13) [ ] 자바의 정석 기초편 카테고리 chapter 13 쓰레드 chapter 13-33 synchronized를 이용한 동기화 예제2 예제 13-13 [ ] 코드 분석 1. 원본 코드 class Ex13_13 { public static void main(String args[]) { Runnalbe r = new RunnableEx13(); new Thread(r).start(); new Thread(r).start(); } } class Account2 { private int balance = 1000; // private으로 해야 동기화가 의미가 있다. public int getBalance() { return balance; } public synchronized void withdraw(int.. 2023. 9. 26.
자바의 정석 기초편 코드 분석 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.