CPU 占用率高有可能是啥问题

2019-08-24 14:35:21 +08:00
 dltsgl

tomcat 里跑了一个 java 工程,时不时会卡死,占满 CPU,日志里看不到有价值的信息。打印了一下堆栈,发现很多线程是 TIMED_WAITING 状态,但是看不懂等待什么,为啥会等待。有 V 友给个帮助吗?

"http-bio-18082-exec-455" #2916 daemon prio=5 os_prio=0 tid=0x00007f7f61880000 nid=0x4997 waiting on condition [0x00007f7b95817000]
	java.lang.Thread.State: TIMED_WAITING (parking)
		at sun.misc.Unsafe.park(Native Method)
		- parking to wait for  <0x00000005c489d518> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
		at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
		at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
		at java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467)
		at org.apache.tomcat.util.threads.TaskQueue.poll(TaskQueue.java:86)
		at org.apache.tomcat.util.threads.TaskQueue.poll(TaskQueue.java:32)
		at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1073)
		at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1134)
		at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
		at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
		at java.lang.Thread.run(Thread.java:748)
710 次点击
所在节点    问与答
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/594742

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX