데드락이란? 멀티 스레드 환경에서 일어날수 있는 현상이다. 동기화를 통해 락을 획득하여 동일한 자원을 여러 곳에서 함부로 사용하지 못하도록 한다.하지만 두 개의 스레드에서 서로 락이 해제 되길 기다리는 상태가 생길수 있으면 이 내용을 교착상태(deadlock) 이라고 합니다. DeakLock 발생 조건상호 배제 (Mutual Exclusion) : 한 자원에 대해 여러 쓰레드 동시 접근 불가점유와 대기 (Hold and Wait) : 자원을 가지고 있는 상태에서 다른 쓰레드가 사용하고 있는 자원 반납을 기다리는 것비선점 (Non Preemptive) : 다른 쓰레드의 자원을 실행 중간에 강제로 가져올 수 없음환형대기 (Circle Wait) : 각 쓰레드가 순환적으로 다음 쓰레드가 요구하는 자원을 ..