자바 동기화 syncronized

Java 2015. 3. 16. 23:21

동기화의 목적

여러 Thread에서 같은 객체의 값에 접근할 경우 갱신된 값이 누락되는 것을 방지하기 위해 syncronized를 사용한다.

스레드가 한가지 동작을 처리하고 있을 경우 다른 동작이 이루어지지 않도록 차단한다.


너무 많은 동기화는 성능 저하나 프로그램 자체가 멈춰버리는 단점이 있으므로 남발하지 않는다.

우선순위를 가진 스레드에서 동기화된 메소드의 처리가 끝날때까지 기다려야 하므로 성능저하는 당연한듯..

객체, 스레드 2개면 교착상태에 빠질 수 있음.



: