项目中使用的是jdk1.6.0_13和Tomcat6.0.18,使用ssh框架,系统一直稳定运行,最近突然出现tomcat挂死的问题,现象是访问页面时浏览器一直处于等待状态,查看服务器的tomcat进程貌似一切正常,使用jstack打印不了,必须使用jstack -F pid才能打出有限的信息,使用jvisualvm等都连不上(已经配置好启动参数了),感觉好像是GC线程挂死了,导致其他java线程处于阻塞状态,请各位高人看看是否遇到过或者是否有解决的思路,不胜感激。
解决方案 »
- 一个页面 有两个form 嵌套 为什么里面那个form 提交的是外面的action
- 改变列表\菜单按钮的宽度
- pushlet 怎么传送前台值到后台
- 关于dom的基础问题
- 计算从我的页面做入口 进入其他站点的次数
- ★高分请教一个有关application、jsp和applet的问题(简单)★
- linux下使用jfreechart开发的问题,附源码,请帮忙看看。
- sql 语句多个条件查询 的处理
- 怎样传参数?
- 如何执行放在数据库里的一段jsp代码???
- <c:foreach items ="${lis}" var = "li " begin="2" end ="12">
- jsp中把sql数据导出指定目录下EXCEL文件中的jsp代码如何编写
No deadlocks found.
Thread 26457: (state = IN_NATIVE)
- java.lang.UNIXProcess.forkAndExec(byte[], byte[], int, byte[], int, byte[], boolean, java.io.FileDescriptor, java.io.FileDescriptor, java.io.FileDescriptor) @bci=0 (Interpreted frame)
- java.lang.UNIXProcess.access$500(java.lang.UNIXProcess, byte[], byte[], int, byte[], int, byte[], boolean, java.io.FileDescriptor, java.io.FileDescriptor, java.io.FileDescriptor) @bci=18 (Interpreted frame)
- java.lang.UNIXProcess$1$1.run() @bci=93 (Interpreted frame)
Thread 22531: (state = BLOCKED)
- java.lang.Object.wait(long) @bci=0 (Interpreted frame)
- com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run() @bci=34, line=534 (Compiled frame)
Thread 22530: (state = BLOCKED)
- java.lang.Object.wait(long) @bci=0 (Interpreted frame)
- com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run() @bci=34, line=534 (Compiled frame)
Thread 22529: (state = BLOCKED)
- java.lang.Object.wait(long) @bci=0 (Interpreted frame)
- com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run() @bci=34, line=534 (Compiled frame)
- java.lang.Object.wait(long) @bci=0 (Interpreted frame)
- com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run() @bci=34, line=534 (Compiled frame)
Thread 22508: (state = BLOCKED)
- java.lang.Object.wait(long) @bci=0 (Interpreted frame)
- com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run() @bci=34, line=534 (Compiled frame)
Thread 22507: (state = BLOCKED)
- java.lang.Object.wait(long) @bci=0 (Interpreted frame)
- com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run() @bci=34, line=534 (Compiled frame)
Thread 19356: (state = BLOCKED)
- java.lang.Object.wait(long) @bci=0 (Interpreted frame)
- com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run() @bci=34, line=534 (Compiled frame)
Thread 19355: (state = BLOCKED)
- java.lang.Object.wait(long) @bci=0 (Interpreted frame)
- com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run() @bci=34, line=534 (Compiled frame)
Thread 19354: (state = BLOCKED)
- java.lang.Object.wait(long) @bci=0 (Interpreted frame)
- com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run() @bci=34, line=534 (Compiled frame)
- sun.misc.Unsafe.park(boolean, long) @bci=0 (Interpreted frame)
- java.util.concurrent.locks.LockSupport.parkNanos(java.lang.Object, long) @bci=20 (Interpreted frame)
- java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(java.util.concurrent.SynchronousQueue$TransferStack$SNode, boolean, long) @bci=174 (Compiled frame)
- java.util.concurrent.SynchronousQueue$TransferStack.transfer(java.lang.Object, boolean, long) @bci=102 (Interpreted frame)
- java.util.concurrent.SynchronousQueue.poll(long, java.util.concurrent.TimeUnit) @bci=11 (Interpreted frame)
- java.util.concurrent.ThreadPoolExecutor.getTask() @bci=62 (Interpreted frame)
- java.util.concurrent.ThreadPoolExecutor$Worker.run() @bci=18 (Interpreted frame)
- java.lang.Thread.run() @bci=11 (Interpreted frame)
441912516 pns
2. 集群的时候,hibernate load 方法
3. 最大值加1问题!导致线程出错!
有答案后请楼主贴出来,造福人类,谢谢