2012-02-08 4 views
0

하나의 스레드가 동기화 된 메소드를 실행 중이므로 객체의 인스턴스에 잠금이 설정되어 있다고 가정합니다. 또한 스레드가 실행 상태에서 실행 가능한 상태로 이동한다고 가정합니다. 그러면 객체 잠금은 어떻게됩니까? 스레드가 실행 가능 상태가되기 전에 스레드가 해제됩니까? 제발 도와주세요 정답 :).Java에서 다중 스레드의 동기화 및 객체 잠금

미리 감사드립니다. Mahendra Reddy.

+1

스레드 상태와 혼동했습니다. [link] (http://docs.oracle.com/javase/7/docs/api/java/lang/Thread.State.html)에 따르면 "실행 중"상태는 없습니다. – Mersenne

답변

1

잠금은 대기 중이 아니면 해제되지 않습니다. (즉, wait()라고 함) 또는 해당 잠금에 대한 마지막 동기화 된 블록을 종료했습니다.

OS가 스레드 실행을 예약했는지 여부에 관계없이 스레드는 실행 가능 상태입니다.

+0

헤이 피터, 고맙습니다. – user1196650