WAS/WebLogic

[정보] 스레드 덤프(Thread Dump) 포맷

투칼론 2022. 11. 22. 20:18
반응형

Thread Dump 포맷

 항목  설명 
 스레드 이름  스레드 이름으로 스레드 생성 시 이름을 지정할 수 있다.
 식별자  데몬 스레드일 경우 'daemon'이라고 표시된다. 
 스레드 우선순위  스레드 우선순위이고, 1~10 범위의 숫자이다. 10이 우선순위가 가장 높다.
 스레드 ID  해당 프로세스에서 유일한 자바 스레드 ID. Thread.getId()로 얻어지는 값
 네이티브 스레드 ID  플랫폼, 즉 OS에서 관리하는 스레드 ID 
 스레드 상태  스레드의 6개 상태 중 하나이다.
 스레드 상태는 NEW, RUNNABLE, BLOCKED, WAITING, TIMED_WAITING, TERMINATED 가 있다.
 스레드 스택 주소 범위  스레드 스택 영역의 주소 범위이다.

 

Thread Dump 예시

"[ACTIVE] ExecuteThread: '28' for queue: 'weblogic.kernel.Default (self-tuning)'" #73 daemon prio=5 os_prio=0 tid=0x00007f97e4b14800 nid=0x9667 runnable [0x00007f97935f4000]
   java.lang.Thread.State: RUNNABLE
        at java.util.HashMap.hash(HashMap.java:339)
        at java.util.HashMap.put(HashMap.java:612)
        at java.util.HashSet.add(HashSet.java:220)
        at weblogic.diagnostics.context.CorrelationManager$ContextWrapperCleaner.enumerateActiveThreads(CorrelationManager.java:1283)

......

Thread 이름 : [ACTIVE] ExecuteThread: '28' for queue: 'weblogic.kernel.Default (self-tuning)

식별자 : daemon

Thread 우선순위 : prion=5 os_prio=0

Thread ID :  tid=0x00007f97e4b14800

Native Thread ID : nid=0x9667

Thread 상태 : RUNNABLE

Thread 스택 영역 주소 : [0x00007f97935f4000]

 

Thread Dump 상태

[참고] http://blueyikim.tistory.com/manage/post/38

 

Thread 종류

데몬 스레드와 비데몬스레드(사용자 스레드) 2 종류가 있다.

 

데몬 스레드는 비데몬 스레드에 종속적이다. 즉 비데몬 스레드가 종료되면 강제로 함께 종료된다.

리스너, 핸들러, GC 등에 구현되면 좋다.

Thread.setDaemon(true) 로 데몬 스레드로 설정할 수 있다.