한번에 한개의 스레드만 프로세스 공유 자원에 접근할 수 있도록 락을 걸어 다른 스레드가 진행중인 작업을 간섭하지 못하도록 함
동기화 메소드
public synchronized void method() {
// 한개의 스레드만 실행할 수 있음
}
동기화 블록
public void method1() {
// 여러 스레드가 실행 할 수 있음
synchronized (공유객체) {
// 한개의 스레드만 실행 할 수 있음
}
// 여러 스레드 실행할 수 있음
}