synchronized란 무엇일까?
synchronized (동기화) - synchronized는 하나의 객체에 여러 개의 객체가 동시에 접근해 처리하는 것을 막기 위해 사용합니다. (Thread의 불규칙적인 자원 공유를 막기 위해 사용) - synchronized 식별자는 보통 메소드의 선언부에 쓰고 이 키워드가 붙은 메서드는 한 번에 하나의 스레드만 접근이 가능하며 메서드가 사용 중일 때 다른 스레드가 메서드를 호출하면 앞의 스레드가 종료될 때까지 기다려야 합니다. Ex) public String data = null; public synchronized String getData() { if (data == null) { data = new String(); } return data; } 동기화 블럭 사용 Ex) public Stri..
2020.02.14