由于线程被阻塞导致性能问题

时间:2012-04-11 05:21:28

标签: multithreading jms threadpool glassfish-3 netty

一段时间以来,我们在Glassfish 3.1上运行的Web应用程序存在严重问题。应用程序通过jms进行异步通信。我们的本地服务通过JBossNetty进行通信。

问题是我们对Web应用程序的每个请求都会打开一个新线程。没关系,但线程永远不会被关闭。几个小时后,由于线程被阻塞,系统挂起。

一些暗示线程被阻止的原因?我已经附上了下面的线程转储。

Full Java Thread Dump Java HotSpot(TM) 64-Bit Server VM 21.0-b17 Oracle Corporation

Number of threads: 878

Number of daemon threads: 765

Peak live thread count since the Java virtual machine started or peak was reset: 932

Is support for thread contention monitoring available on this JVM? [true]

Is thread contention monitoring enabled? [false]. If false, some thread synchronization statistics are not be available.

Is support for CPU time measurement for any thread available on this JVM? [true]

Is thread CPU time measurement enabled? [true]. If false, thread execution times are not available for any thread.

--------------------------------------------------------------------------------

Thread Execution Information:

-----------------------

Thread "pool-34-thread-851" thread-id: 47.019 thread-state: TIMED_WAITING Waiting on lock: java.util.concurrent.SynchronousQueue$TransferStack@39e45b53

     at: sun.misc.Unsafe.park(Native Method)

     at: java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)

     at: java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)

     at: java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:359)

     at: java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:942)

     at: java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1043)

     at: java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1103)

     at: java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)

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

Thread Synchronization Statistics:

-----------------------

Number of times this thread was blocked (to enter/reenter a Monitor): 0

Number of times this thread waited for a notification (i.e. it was in WAITING or TIMED_WAITING state): 2

Total CPU time for this thread: 0 seconds 0 nanoseconds.

User-level CPU time for this thread: 0 seconds 0 nanoseconds.

Object Monitors currently held or requested by this thread: []

Ownable Synchronizers (e.g. ReentrantLock and ReentrantReadWriteLock) held by this thread: []

--------------------------------------------------------------------------------

Thread Execution Information:

-----------------------

Thread "pool-34-thread-850" thread-id: 47.018 thread-state: TIMED_WAITING Waiting on lock: java.util.concurrent.SynchronousQueue$TransferStack@39e45b53

     at: sun.misc.Unsafe.park(Native Method)

     at: java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)

     at: java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)

     at: java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:359)

     at: java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:942)

     at: java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1043)

     at: java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1103)

     at: java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)

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

Thread Synchronization Statistics:

-----------------------

Number of times this thread was blocked (to enter/reenter a Monitor): 0

Number of times this thread waited for a notification (i.e. it was in WAITING or TIMED_WAITING state): 1

Total CPU time for this thread: 0 seconds 0 nanoseconds.

User-level CPU time for this thread: 0 seconds 0 nanoseconds.

Object Monitors currently held or requested by this thread: []

Ownable Synchronizers (e.g. ReentrantLock and ReentrantReadWriteLock) held by this thread: []

--------------------------------------------------------------------------------

Thread Execution Information:

-----------------------

Thread "hz._hzInstance_1_dev.cached.thread-618" thread-id: 47.014 thread-state: TIMED_WAITING Waiting on lock: java.util.concurrent.SynchronousQueue$TransferStack@3f27c3d6

     at: sun.misc.Unsafe.park(Native Method)

     at: java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)

     at: java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)

     at: java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:359)

     at: java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:942)

     at: java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1043)

     at: java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1103)

     at: java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)

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

Thread Synchronization Statistics:

-----------------------

Number of times this thread was blocked (to enter/reenter a Monitor): 0

Number of times this thread waited for a notification (i.e. it was in WAITING or TIMED_WAITING state): 3

Total CPU time for this thread: 0 seconds 0 nanoseconds.

User-level CPU time for this thread: 0 seconds 0 nanoseconds.

Object Monitors currently held or requested by this thread: []

Ownable Synchronizers (e.g. ReentrantLock and ReentrantReadWriteLock) held by this thread: []

--------------------------------------------------------------------------------

Thread Execution Information:

-----------------------

Thread "New I/O server worker #1-13" thread-id: 47.004 thread-state: BLOCKED Waiting on lock: java.util.Collections$SynchronizedMap@41310d05

     at: com.mycompany.library.transmission.jbossNetty.JBossNettyServer.removeClient(JBossNettyServer.java:412)

     at: com.mycompany.library.transmission.jbossNetty.ServerChannelHandler.doDisconnect(ServerChannelHandler.java:459)

     at: com.mycompany.library.transmission.jbossNetty.ServerChannelHandler.channelDisconnected(ServerChannelHandler.java:196)

     at: org.jboss.netty.channel.SimpleChannelHandler.handleUpstream(SimpleChannelHandler.java:132)

     at: org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:545)

     at: org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:754)

     at: org.jboss.netty.handler.codec.replay.ReplayingDecoder.cleanup(ReplayingDecoder.java:555)

     at: org.jboss.netty.handler.codec.replay.ReplayingDecoder.channelDisconnected(ReplayingDecoder.java:450)

     at: org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:112)

     at: org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:545)

     at: org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:540)

     at: org.jboss.netty.channel.Channels.fireChannelDisconnected(Channels.java:360)

     at: org.jboss.netty.channel.socket.nio.NioWorker.close(NioWorker.java:587)

     at: org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:356)

     at: org.jboss.netty.channel.socket.nio.NioWorker.processSelectedKeys(NioWorker.java:281)

     at: org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:201)

     at: org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108)

     at: org.jboss.netty.util.internal.IoWorkerRunnable.run(IoWorkerRunnable.java:46)

     at: java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)

     at: java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)

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

Thread Synchronization Statistics:

-----------------------

This thread is blocked waiting on lock owned currently by thread named: pool-66-thread-1, id: 41.339

Number of times this thread was blocked (to enter/reenter a Monitor): 5

Number of times this thread waited for a notification (i.e. it was in WAITING or TIMED_WAITING state): 3

Total CPU time for this thread: 0 seconds 31.200.200 nanoseconds.

User-level CPU time for this thread: 0 seconds 31.200.200 nanoseconds.

Object Monitors currently held or requested by this thread: []

Ownable Synchronizers (e.g. ReentrantLock and ReentrantReadWriteLock) held by this thread: []

--------------------------------------------------------------------------------

Thread Execution Information:

-----------------------

Thread "New I/O server worker #1-15" thread-id: 46.997 thread-state: BLOCKED Waiting on lock: java.util.Collections$SynchronizedMap@41310d05

     at: com.mycompany.library.transmission.jbossNetty.JBossNettyServer.removeClient(JBossNettyServer.java:412)

     at: com.mycompany.library.transmission.jbossNetty.ServerChannelHandler.doDisconnect(ServerChannelHandler.java:459)

     at: com.mycompany.library.transmission.jbossNetty.ServerChannelHandler.channelDisconnected(ServerChannelHandler.java:196)

     at: org.jboss.netty.channel.SimpleChannelHandler.handleUpstream(SimpleChannelHandler.java:132)

     at: org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:545)

     at: org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:754)

     at: org.jboss.netty.handler.codec.replay.ReplayingDecoder.cleanup(ReplayingDecoder.java:555)

     at: org.jboss.netty.handler.codec.replay.ReplayingDecoder.channelDisconnected(ReplayingDecoder.java:450)

     at: org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:112)

     at: org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:545)

     at: org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:540)

     at: org.jboss.netty.channel.Channels.fireChannelDisconnected(Channels.java:360)

     at: org.jboss.netty.channel.socket.nio.NioWorker.close(NioWorker.java:587)

     at: org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:356)

     at: org.jboss.netty.channel.socket.nio.NioWorker.processSelectedKeys(NioWorker.java:281)

     at: org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:201)

     at: org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108)

     at: org.jboss.netty.util.internal.IoWorkerRunnable.run(IoWorkerRunnable.java:46)

     at: java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)

     at: java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)

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

Thread Synchronization Statistics:

-----------------------

This thread is blocked waiting on lock owned currently by thread named: pool-66-thread-1, id: 41.339

Number of times this thread was blocked (to enter/reenter a Monitor): 9

Number of times this thread waited for a notification (i.e. it was in WAITING or TIMED_WAITING state): 2

Total CPU time for this thread: 0 seconds 124.800.800 nanoseconds.

User-level CPU time for this thread: 0 seconds 124.800.800 nanoseconds.

Object Monitors currently held or requested by this thread: []

Ownable Synchronizers (e.g. ReentrantLock and ReentrantReadWriteLock) held by this thread: []

--------------------------------------------------------------------------------

Thread Execution Information:

-----------------------

Thread "New I/O server worker #1-22" thread-id: 46.985 thread-state: BLOCKED Waiting on lock: java.util.Collections$SynchronizedMap@41310d05

     at: com.mycompany.library.transmission.jbossNetty.JBossNettyServer.addClient(JBossNettyServer.java:395)

     at: com.mycompany.library.transmission.jbossNetty.ServerChannelHandler.doIdentify(ServerChannelHandler.java:397)

     at: com.mycompany.library.transmission.jbossNetty.ServerChannelHandler.messageReceived(ServerChannelHandler.java:283)

     at: org.jboss.netty.channel.SimpleChannelHandler.handleUpstream(SimpleChannelHandler.java:100)

     at: org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:545)

     at: org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:754)

     at: org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:302)

     at: org.jboss.netty.handler.codec.replay.ReplayingDecoder.unfoldAndfireMessageReceived(ReplayingDecoder.java:526)

     at: org.jboss.netty.handler.codec.replay.ReplayingDecoder.callDecode(ReplayingDecoder.java:507)

     at: org.jboss.netty.handler.codec.replay.ReplayingDecoder.messageReceived(ReplayingDecoder.java:444)

     at: org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:80)

     at: org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:545)

     at: org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:540)

     at: org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:274)

     at: org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:261)

     at: org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:350)

     at: org.jboss.netty.channel.socket.nio.NioWorker.processSelectedKeys(NioWorker.java:281)

     at: org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:201)

     at: org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108)

     at: org.jboss.netty.util.internal.IoWorkerRunnable.run(IoWorkerRunnable.java:46)

     at: java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)

     at: java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)

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

Thread Synchronization Statistics:

-----------------------

This thread is blocked waiting on lock owned currently by thread named: pool-66-thread-1, id: 41.339

Number of times this thread was blocked (to enter/reenter a Monitor): 304

Number of times this thread waited for a notification (i.e. it was in WAITING or TIMED_WAITING state): 4

Total CPU time for this thread: 0 seconds 156.001.000 nanoseconds.

User-level CPU time for this thread: 0 seconds 156.001.000 nanoseconds.

Object Monitors currently held or requested by this thread: []

Ownable Synchronizers (e.g. ReentrantLock and ReentrantReadWriteLock) held by this thread: []

--------------------------------------------------------------------------------

Thread Execution Information:

-----------------------

Thread "New I/O server worker #1-9" thread-id: 46.938 thread-state: RUNNABLE Running in native

     at: sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)

     at: sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:295)

     at: sun.nio.ch.WindowsSelectorImpl$SubSelector.access$400(WindowsSelectorImpl.java:277)

     at: sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:158)

     at: sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:87)

     at: sun.nio.ch.SelectorImpl.select(SelectorImpl.java:98)

     at: org.jboss.netty.channel.socket.nio.SelectorUtil.select(SelectorUtil.java:38)

     at: org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:164)

     at: org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108)

     at: org.jboss.netty.util.internal.IoWorkerRunnable.run(IoWorkerRunnable.java:46)

     at: java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)

     at: java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)

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

Thread Synchronization Statistics:

-----------------------

Number of times this thread was blocked (to enter/reenter a Monitor): 308

Number of times this thread waited for a notification (i.e. it was in WAITING or TIMED_WAITING state): 3

Total CPU time for this thread: 0 seconds 202.801.300 nanoseconds.

User-level CPU time for this thread: 0 seconds 202.801.300 nanoseconds.

Object Monitors currently held or requested by this thread: []

Ownable Synchronizers (e.g. ReentrantLock and ReentrantReadWriteLock) held by this thread: []

--------------------------------------------------------------------------------

Thread Execution Information:

-----------------------

Thread "New I/O server worker #1-12" thread-id: 46.937 thread-state: BLOCKED Waiting on lock: java.util.Collections$SynchronizedMap@41310d05

     at: com.mycompany.library.transmission.jbossNetty.JBossNettyServer.removeClient(JBossNettyServer.java:412)

     at: com.mycompany.library.transmission.jbossNetty.ServerChannelHandler.doDisconnect(ServerChannelHandler.java:459)

     at: com.mycompany.library.transmission.jbossNetty.ServerChannelHandler.channelDisconnected(ServerChannelHandler.java:196)

     at: org.jboss.netty.channel.SimpleChannelHandler.handleUpstream(SimpleChannelHandler.java:132)

     at: org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:545)

     at: org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:754)

     at: org.jboss.netty.handler.codec.replay.ReplayingDecoder.cleanup(ReplayingDecoder.java:555)

     at: org.jboss.netty.handler.codec.replay.ReplayingDecoder.channelDisconnected(ReplayingDecoder.java:450)

     at: org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:112)

     at: org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:545)

     at: org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:540)

     at: org.jboss.netty.channel.Channels.fireChannelDisconnected(Channels.java:360)

     at: org.jboss.netty.channel.socket.nio.NioWorker.close(NioWorker.java:587)

     at: org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:356)

     at: org.jboss.netty.channel.socket.nio.NioWorker.processSelectedKeys(NioWorker.java:281)

     at: org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:201)

     at: org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108)

     at: org.jboss.netty.util.internal.IoWorkerRunnable.run(IoWorkerRunnable.java:46)

     at: java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)

     at: java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)

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

Thread Synchronization Statistics:

-----------------------

This thread is blocked waiting on lock owned currently by thread named: pool-66-thread-1, id: 41.339

Number of times this thread was blocked (to enter/reenter a Monitor): 311

Number of times this thread waited for a notification (i.e. it was in WAITING or TIMED_WAITING state): 7

Total CPU time for this thread: 0 seconds 156.001.000 nanoseconds.

User-level CPU time for this thread: 0 seconds 156.001.000 nanoseconds.

Object Monitors currently held or requested by this thread: []

Ownable Synchronizers (e.g. ReentrantLock and ReentrantReadWriteLock) held by this thread: []

--------------------------------------------------------------------------------

Thread Execution Information:

-----------------------

Thread "pool-65-thread-267" thread-id: 46.936 thread-state: TIMED_WAITING Waiting on lock: java.util.concurrent.SynchronousQueue$TransferStack@7b4de4b2

     at: sun.misc.Unsafe.park(Native Method)

     at: java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)

     at: java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)

     at: java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:359)

     at: java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:942)

     at: java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1043)

     at: java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1103)

     at: java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)

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

Thread Synchronization Statistics:

-----------------------

Number of times this thread was blocked (to enter/reenter a Monitor): 3

Number of times this thread waited for a notification (i.e. it was in WAITING or TIMED_WAITING state): 2

Total CPU time for this thread: 0 seconds 0 nanoseconds.

User-level CPU time for this thread: 0 seconds 0 nanoseconds.

Object Monitors currently held or requested by this thread: []

Ownable Synchronizers (e.g. ReentrantLock and ReentrantReadWriteLock) held by this thread: []

--------------------------------------------------------------------------------

Thread Execution Information:

-----------------------

Thread "pool-65-thread-266" thread-id: 46.926 thread-state: TIMED_WAITING Waiting on lock: java.util.concurrent.SynchronousQueue$TransferStack@7b4de4b2

     at: sun.misc.Unsafe.park(Native Method)

     at: java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)

     at: java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)

     at: java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:359)

     at: java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:942)

     at: java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1043)

     at: java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1103)

     at: java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)

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

Thread Synchronization Statistics:

-----------------------

Number of times this thread was blocked (to enter/reenter a Monitor): 3

Number of times this thread waited for a notification (i.e. it was in WAITING or TIMED_WAITING state): 3

Total CPU time for this thread: 0 seconds 0 nanoseconds.

User-level CPU time for this thread: 0 seconds 0 nanoseconds.

Object Monitors currently held or requested by this thread: []

Ownable Synchronizers (e.g. ReentrantLock and ReentrantReadWriteLock) held by this thread: []

--------------------------------------------------------------------------------

Thread Execution Information:

-----------------------

Thread "pool-65-thread-265" thread-id: 46.920 thread-state: TIMED_WAITING Waiting on lock: java.util.concurrent.SynchronousQueue$TransferStack@7b4de4b2

     at: sun.misc.Unsafe.park(Native Method)

     at: java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)

     at: java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)

     at: java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:359)

     at: java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:942)

     at: java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1043)

     at: java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1103)

     at: java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)

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

Thread Synchronization Statistics:

-----------------------

1 个答案:

答案 0 :(得分:0)

Sven Moschel, 我不是100%确定这是你的问题,但是有一些已知的重负荷和玻璃鱼的错误3.1.2 http://java.net/jira/browse/GLASSFISH-18351