본문

동기화(synchronized)

반응형

# 동기화(synchronized)

한 번에 하나의 쓰레드만 객체에 접근할 수 있도록 객체에 락(lock)을 걸어서 데이터의 일관성을 유지하는 것.


자바에서는 키워드 synchronized를 통해 해당 작업과 관련된 공유데이터에 lock을 걸어서 먼저 작업 중이던 쓰레드가 작업을 완전히 마칠 때 까지는 다른 쓰레드에게 제어권이 넘어가더라도  데이터가 변경되지 않도록  보호함으로써 쓰레드의 동기화를 가능하게 한다.


synchronized 블록을 수행하는 동안은 지정된 객체에 lock이 걸려서 다른 쓰레드가 이 객체에 접근할 수 없게 된다.






- 출처 : JAVA의정석(남궁성 저)

반응형

공유

댓글