LockInfo
LockInfo (잠금 정보)
잠금(lock)에 대한 정보를 담는 클래스예요. 잠금은 내장 객체 모니터, 독점 가능한 동기화기(ownable synchronizer), 또는 동기화기에 연결된 Condition 객체일 수 있어요.
본문
독점 가능한 동기화기(ownable synchronizer)는 스레드가 독점적으로 소유할 수 있으며 AbstractOwnableSynchronizer(또는 그 하위 클래스)를 이용해 동기화 속성을 구현하는 동기화기를 말해요. ReentrantLock과 ReentrantReadWriteLock의 쓰기 잠금(읽기 잠금 제외)이 플랫폼이 제공하는 독점 가능한 동기화기의 예시예요.
LockInfo는 from 메서드에 명시된 대로 CompositeData로 매핑되어 MXBean을 통해 전달될 수 있어요. getClassName()으로 잠금 객체의 클래스 이름, getIdentityHashCode()로 잠금 객체의 identity hash code를 얻을 수 있어요. Java 1.6부터 제공돼요.
내장 모니터(monitor)와 독점 가능한 동기화기(ownable synchronizer) 모두 이 정보 객체로 표현돼요. ThreadMXBean.dumpAllThreads가 돌려주는 스레드 정보의 동기화 부분에 포함돼요.