java 线程状态 jstack_从cpu负载到jstack分析线程状态

~ jstack 4548

2017-03-14 09:57:31

Full thread dump Java HotSpot(TM) 64-Bit Server VM (25.102-b14 mixed mode):

"Attach Listener" #13 daemon prio=9 os_prio=31 tid=0x00007f8c1a222000 nid=0x350f waiting on condition [0x0000000000000000]

java.lang.Thread.State: RUNNABLE

"DestroyJavaVM" #12 prio=5 os_prio=31 tid=0x00007f8c1a26c800 nid=0x1703 waiting on condition [0x0000000000000000]

java.lang.Thread.State: RUNNABLE

"线程2" #11 prio=5 os_prio=31 tid=0x00007f8c1a223000 nid=0x5103 waiting for monitor entry [0x000070000134f000]

java.lang.Thread.State: BLOCKED (on object monitor)

at cn.gov.zcy.fixed.CPULockTest.lambda$main$1(CPULockTest.java:35)

- waiting to lock<0x0000000795b08d58>(a java.lang.Object)

- locked<0x0000000795b08d68>(a java.lang.Object)

at cn.gov.zcy.fixed.CPULockTest$$Lambda$2/859417998.run(Unknown Source)

at java.lang.Thread.run(Thread.java:745)

"线程1" #10 prio=5 os_prio=31 tid=0x00007f8c19967800 nid=0x4f03 waiting for monitor entry [0x000070000124c000]

java.lang.Thread.State: BLOCKED (on object monitor)

at cn.gov.zcy.fixed.CPULockTest.lambda$main$0(CPULockTest.java:21)

- waiting to lock<0x0000000795b08d68>(a java.lang.Object)

- locked<0x0000000795b08d58>(a java.lang.Object)

at cn.gov.zcy.fixed.CPULockTest$$Lambda$1/1020391880.run(Unknown Source)

at java.lang.Thread.run(Thread.java:745)

"Monitor Ctrl-Break" #9 daemon prio=5 os_prio=31 tid=0x00007f8c1a224800 nid=0x4d03 runnable [0x0000700001149000]

java.lang.Thread.State: RUNNABLE

at java.net.PlainSocketImpl.socketAccept(Native Method)

at java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:409)

at java.net.ServerSocket.implAccept(ServerSocket.java:545)

at java.net.ServerSocket.accept(ServerSocket.java:513)

at com.intellij.rt.execution.application.AppMain$1.run(AppMain.java:90)

at java.lang.Thread.run(Thread.java:745)

"Service Thread" #8 daemon prio=9 os_prio=31 tid=0x00007f8c1a029800 nid=0x4903 runnable [0x0000000000000000]

java.lang.Thread.State: RUNNABLE

"C1 CompilerThread2" #7 daemon prio=9 os_prio=31 tid=0x00007f8c1a83f800 nid=0x4703 waiting on condition [0x0000000000000000]

java.lang.Thread.State: RUNNABLE

"C2 CompilerThread1" #6 daemon prio=9 os_prio=31 tid=0x00007f8c19845000 nid=0x4503 waiting on condition [0x0000000000000000]

java.lang.Thread.State: RUNNABLE

"C2 CompilerThread0" #5 daemon prio=9 os_prio=31 tid=0x00007f8c1a800800 nid=0x4303 waiting on condition [0x0000000000000000]

java.lang.Thread.State: RUNNABLE

"Signal Dispatcher" #4 daemon prio=9 os_prio=31 tid=0x00007f8c1a028000 nid=0x320f runnable [0x0000000000000000]

java.lang.Thread.State: RUNNABLE

"Finalizer" #3 daemon prio=8 os_prio=31 tid=0x00007f8c1a82d000 nid=0x3003 in Object.wait() [0x000070000092e000]

java.lang.Thread.State: WAITING (on object monitor)

at java.lang.Object.wait(Native Method)

- waiting on<0x0000000795588e98>(a java.lang.ref.ReferenceQueue$Lock)

at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)

-locked<0x0000000795588e98>(a java.lang.ref.ReferenceQueue$Lock)

at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164)

at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209)

"Reference Handler" #2 daemon prio=10 os_prio=31 tid=0x00007f8c19805000 nid=0x2e03 in Object.wait() [0x000070000082b000]

java.lang.Thread.State: WAITING (on object monitor)

at java.lang.Object.wait(Native Method)

- waiting on<0x0000000795586b40>(a java.lang.ref.Reference$Lock)

at java.lang.Object.wait(Object.java:502)

at java.lang.ref.Reference.tryHandlePending(Reference.java:191)

- locked<0x0000000795586b40>(a java.lang.ref.Reference$Lock)

at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:153)

"VM Thread" os_prio=31 tid=0x00007f8c1a014000 nid=0x2c03 runnable

"GC task thread#0 (ParallelGC)" os_prio=31 tid=0x00007f8c1a818800 nid=0x2403 runnable

"GC task thread#1 (ParallelGC)" os_prio=31 tid=0x00007f8c1a000800 nid=0x2603 runnable

"GC task thread#2 (ParallelGC)" os_prio=31 tid=0x00007f8c19809000 nid=0x2803 runnable

"GC task thread#3 (ParallelGC)" os_prio=31 tid=0x00007f8c19809800 nid=0x2a03 runnable

"VM Periodic Task Thread" os_prio=31 tid=0x00007f8c1b029800 nid=0x4b03 waiting on condition

JNI global references: 324

Found one Java-level deadlock:

=============================

"线程2":

waiting to lock monitor 0x00007f8c1a0176b8 (object 0x0000000795b08d58, a java.lang.Object),

which is held by "线程1"

"线程1":

waiting to lock monitor 0x00007f8c1a0178c8 (object 0x0000000795b08d68, a java.lang.Object),

which is held by "线程2"

Java stack information for the threads listed above:

===================================================

"线程2":

at cn.gov.zcy.fixed.CPULockTest.lambda$main$1(CPULockTest.java:35)

- waiting to lock<0x0000000795b08d58>(a java.lang.Object)

- locked<0x0000000795b08d68>(a java.lang.Object)

at cn.gov.zcy.fixed.CPULockTest$$Lambda$2/859417998.run(Unknown Source)

at java.lang.Thread.run(Thread.java:745)

"线程1":

at cn.gov.zcy.fixed.CPULockTest.lambda$main$0(CPULockTest.java:21)

- waiting to lock<0x0000000795b08d68>(a java.lang.Object)

- locked<0x0000000795b08d58>(a java.lang.Object)

at cn.gov.zcy.fixed.CPULockTest$$Lambda$1/1020391880.run(Unknown Source)

at java.lang.Thread.run(Thread.java:745)

Found 1 deadlock.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值