我该如何解决Weblogic 11 OSB管理中的“阻塞线程”问题?

时间:2019-04-08 21:21:09

标签: multithreading weblogic osb

我的线程被卡住,需要帮助以找出根本原因。  下面是一个线程转储:

        "AD Thread Pool-Global15" waiting for lock java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@2537cac0 TIMED_WAITING
            sun.misc.Unsafe.park(Native Method)       
            java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)        
            java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2082)         
            java.util.concurrent.DelayQueue.take(DelayQueue.java:220)         
            com.singularity.ee.util.javaspecific.scheduler.v.c(v.java:755)            
            com.singularity.ee.util.javaspecific.scheduler.i.run(i.java:725)      
            java.lang.Thread.run(Thread.java:745)
        "DmsThread-2" waiting for lock java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@5b51514f TIMED_WAITING
            sun.misc.Unsafe.park(Native Method)
            java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
            java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2082)
            java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:807)
            java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
            java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
            oracle.dms.aggregator.DmsThreadFactory$1$1.run(DmsThreadFactory.java:56)
            java.security.AccessController.doPrivileged(Native Method)
            oracle.dms.aggregator.DmsThreadFactory$1.run(DmsThreadFactory.java:51)       
            java.lang.Thread.run(Thread.java:745)        
        "oracle.dfw.common.DiagnosticsEventManager.NotifierThread" waiting for lock java.util.LinkedList@3eb2e717 WAITING       
            java.lang.Object.wait(Native Method)       
            java.lang.Object.wait(Object.java:503)       
            oracle.dfw.common.DiagnosticsEventManager$NotifierThread.run(DiagnosticsEventManager.java:298)
            java.lang.Thread.run(Thread.java:745)           
            java.lang.Object.wait(Native Method)        
            java.lang.Object.wait(Object.java:503)         
            weblogic.work.ExecuteThread.waitForRequest(ExecuteThread.java:205)         
            weblogic.work.ExecuteThread.run(ExecuteThread.java:233)   
        "app-producer-network-thread | producer-1" RUNNABLE native       
            sun.nio.ch.EPollArrayWrapper.epollWait(Native Method)      
            sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269)       
            sun.nio.ch.EPollsecImpl.doSelect(EPollsecImpl.java:79)       
            sun.nio.ch.secImpl.lockAndDoSelect(secImpl.java:87)       
            sun.nio.ch.secImpl.select(secImpl.java:98)       
            log.app.sec.select(sec.java:672)        
            log.app.sec.poll(sec.java:396)

            log.app.net.poll(net.java:460)

            log.app.pro.Send.run(Send.java:239)

            app.pro.Send.run(Send.java:163)

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

        "logback-1" waiting for lock java.util.concurrent.SynchronousQueue$TransferStack@6edc7ff0 WAITING        
            sun.misc.Unsafe.park(Native Method)        
            java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)         
            java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:458)         
            java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:359)         
            java.util.concurrent.SynchronousQueue.take(SynchronousQueue.java:925)         
            java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
            java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
            java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)         
            java.lang.Thread.run(Thread.java:745)                   
        "CacheCleaner" waiting for lock oracle.ias.cache.TimeQ@67322757 TIMED_WAITING       
            java.lang.Object.wait(Native Method)       
            oracle.ias.cache.TimeQ.waitForWork(TimeQ.java:178)       
            oracle.ias.cache.CacheCleaner.run(CacheCleaner.java:116)       
        "Worker-2" waiting for lock oracle.ias.cache.TaskQ@db4f5af WAITING      
            java.lang.Object.wait(Native Method)
            oracle.ias.cache.TaskQ.waitForWork(TaskQ.java:255) 
            oracle.ias.cache.TaskQ.getTask(TaskQ.java:138)  
            oracle.ias.cache.WorkerThread.run(ThreadPool.java:303     
        "Worker-0" waiting for lock oracle.ias.cache.TaskQ@db4f5af WAITING      
            java.lang.Object.wait(Native Method)     
            oracle.ias.cache.TaskQ.waitForWork(TaskQ.java:255)  
            oracle.ias.cache.TaskQ.getTask(TaskQ.java:138)   
            oracle.ias.cache.WorkerThread.run(ThreadPool.java:303)    
        "RepolessTargetManager" waiting for lock oracle.sysman.emdrep.repoless.RepolessTargetManager@7a62d12e TIMED_WAITING       
            java.lang.Object.wait(Native Method)      
            oracle.sysman.emdrep.repoless.RepolessTargetManager.waitNewAgent(RepolessTargetManager.java:483)      
            oracle.sysman.emdrep.repoless.RepolessTargetManager.run(RepolessTargetManager.java:920)      
            java.lang.Thread.run(Thread.java:745)       
        "HealthMonitor" waiting for lock oracle.sysman.util.healthMonitor.HealthMonitor@5dabda0f TIMED_WAITING       
            java.lang.Object.wait(Native Method)        
            oracle.sysman.util.healthMonitor.HealthMonitor.run(HealthMonitor.java:282)        
            java.lang.Thread.run(Thread.java:745)

        "Java2D Disposer" waiting for lock java.lang.ref.ReferenceQueue$Lock@7dea38d3 WAITING        
            java.lang.Object.wait(Native Method)        
            java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:135)         
            java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:151)         
            sun.java2d.Disposer.run(Disposer.java:145)        
            java.lang.Thread.run(Thread.java:745)         
        "[STANDBY] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'" waiting for lock weblogic.work.ExecuteThread@2bf20a04 WAITING        
            java.lang.Object.wait(Native Method)        
            java.lang.Object.wait(Object.java:503         
            weblogic.work.ExecuteThread.waitForRequest(ExecuteThread.java:205)        
            weblogic.work.ExecuteThread.run(ExecuteThread.java:233)
        "DmsThread-1" waiting for lock java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@5b51514f WAITING         
            sun.misc.Unsafe.park(Native Method)        
            java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)        
            java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)         
            java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1085)
            java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:807)        
            java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)        
            java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)        
            java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)        
            oracle.dms.aggregator.DmsThreadFactory$1$1.run(DmsThreadFactory.java:56)        
            java.security.AccessController.doPrivileged(Native Method)
            oracle.dms.aggregator.DmsThreadFactory$1.run(DmsThreadFactory.java:51)  
            java.lang.Thread.run(Thread.java:745)   
        "[STANDBY] ExecuteThread: '5' for queue: 'weblogic.kernel.Default (self-tuning)'" waiting for lock weblogic.work.ExecuteThread@55a3e52f WAITING
            java.lang.Object.wait(Native Method)
            java.lang.Object.wait(Object.java:503)
            weblogic.work.ExecuteThread.waitForRequest(ExecuteThread.java:205) 
            weblogic.work.ExecuteThread.run(ExecuteThread.java:233)    
        "com.bea.osb.transports.jms.TimerThread" waiting for lock java.util.concurrent.Semaphore$NonfairSync@37b1485f WAITING
            sun.misc.Unsafe.park(Native Method)  
            java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)  
            java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834)  
            java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:994)  
            java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1303)  
            java.util.concurrent.Semaphore.acquire(Semaphore.java:317)   
            com.bea.wli.sb.transports.jms.JmsAsyncMessageTable$TimeoutThread.run(JmsAsyncMessageTable.java:250    
       "AD Thread-Hotspot Processor0" waiting for lock java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@f080685 TIMED_WAITING      
        sun.misc.Unsafe.park(Native Method)      
            java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)      
            java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2082)      
         java.util.concurrent.DelayQueue.take(DelayQueue.java:220)       
            com.singularity.ee.util.javaspecific.scheduler.v.c(v.java:755)       
            com.singularity.ee.util.javaspecific.scheduler.v.take(v.java:695)      
            com.singularity.ee.util.javaspecific.scheduler.w.a(w.java:500)       
            com.singularity.ee.util.javaspecific.scheduler.i.run(i.java:725)       
            java.lang.Thread.run(Thread.java:745)  
        "[STANDBY] ExecuteThread: '4' for queue: 'weblogic.kernel.Default (self-tuning)'" waiting for lock weblogic.work.ExecuteThread@722e5eff WAITING   
            java.lang.Object.wait(Native Method)       
            java.lang.Object.wait(Object.java:503)       
            weblogic.work.ExecuteThread.waitForRequest(ExecuteThread.java:205)        
            weblogic.work.ExecuteThread.run(ExecuteThread.java:233)        
        "[STANDBY] ExecuteThread: '3' for queue: 'weblogic.kernel.Default (self-tuning)'" waiting for lock weblogic.work.ExecuteThread@4014b4d WAITING         
            java.lang.Object.wait(Native Method)       
            java.lang.Object.wait(Object.java:503        
            weblogic.work.ExecuteThread.waitForRequest(ExecuteThread.java:205         
            weblogic.work.ExecuteThread.run(ExecuteThread.java:233)         
        "[STANDBY] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'" waiting for lock weblogic.work.ExecuteThread@57a9acd WAITING        
            java.lang.Object.wait(Native Method)       
            java.lang.Object.wait(Object.java:503)       
            weblogic.work.ExecuteThread.waitForRequest(ExecuteThread.java:205)       
            weblogic.work.ExecuteThread.run(ExecuteThread.java:233)     
        "Thread-60" RUNNABLE native     
            java.net.SocketInputStream.socketRead0(Native Method)     
            java.net.SocketInputStream.read(SocketInputStream.java:152)     
            java.net.SocketInputStream.read(SocketInputStream.java:122)      
            java.net.SocketInputStream.read(SocketInputStream.java:210)      
            oracle.ons.InputBuffer.getNextString(InputBuffer.java:137)      
            oracle.ons.ReceiverThread.run(ReceiverThread.java:295)      
        "OracleTimeoutPollingThread" TIMED_WAITING
            java.lang.Thread.sleep(Native Method)   
            oracle.jdbc.driver.OracleTimeoutPollingThread.run(OracleTimeoutPollingThread.java:155)
        "oracle.dfw.incident.IncidentCreatorThread" waiting for lock java.util.ArrayList@596c1061 WAITING
            oracle.dfw.impl.incident.DiagnosticsDataExtractorImpl$IncidentCreatorThread.run(DiagnosticsDataExtractorImpl.java:2144)        
        "oracle.dfw.impl.incident.ADRHelper - purge incidents" waiting for lock java.util.TaskQueue@45a77e24 TIMED_WAITING        
            java.util.TimerThread.mainLoop(Timer.java:552)


        "oracle.dfw.impl.incident - ADR Executor " waiting for lock java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@774a9135 WAITING

            sun.misc.Unsafe.park(Native Method)

            java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)

            java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)

            java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)

            java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
            java.lang.Thread.run(Thread.java:745)

        "DFW Diagnostic Dump Sampling - JavaClassHistogram" waiting for lock [B@40836bc2 TIMED_WAITING

            java.lang.Object.wait(Native Method)

            oracle.dfw.sampling.DumpSampling.run(DumpSampling.java:547)

        "DFW Diagnostic Dump Sampling - JVMThreadDump" waiting for lock [B@7417aea4 TIMED_WAITING
            java.lang.Object.wait(Native Method)     
            oracle.dfw.sampling.DumpSampling.run(DumpSampling.java:547)
        "LogFlusher" TIMED_WAITING     
            java.lang.Thread.sleep(Native Method)     
            oracle.core.ojdl.BufferedLogWriter$Flusher.run(BufferedLogWriter.java:409)    
        "LogFlusher" TIMED_WAITING
            java.lang.Thread.sleep(Native Method)
            oracle.core.ojdl.BufferedLogWriter$Flusher.run(BufferedLogWriter.java:409)
        "LogFlusher" TIMED_WAITING
            java.lang.Thread.sleep(Native Method) 
            oracle.core.ojdl.BufferedLogWriter$Flusher.run(BufferedLogWriter.java:409)
        "Timer-4" waiting for lock java.util.TaskQueue@56183c4b TIMED_WAITING
            java.lang.Object.wait(Native Method)
            java.util.TimerThread.mainLoop(Timer.java:552)
            java.util.TimerThread.run(Timer.java:505)

        "Thread-20" waiting for lock java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@2c7ee04e WAITING
            sun.misc.Unsafe.park(Native Method)
            java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)

            java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)

            java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)

            weblogic.utils.concurrent.JDK15ConcurrentBlockingQueue.take(JDK15ConcurrentBlockingQueue.java:89)

            weblogic.store.internal.PersistentStoreImpl.getOutstandingWork(PersistentStoreImpl.java:676)

            weblogic.store.internal.PersistentStoreImpl.run(PersistentStoreImpl.java:751)

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

        "Timer-3" waiting for lock java.util.TaskQueue@9512a14 WAITING

            java.lang.Object.wait(Native Method)

            java.lang.Object.wait(Object.java:503)

            java.util.TimerThread.mainLoop(Timer.java:526)

            java.util.TimerThread.run(Timer.java:505)

        "Runtime Authorization Event Notifier" waiting for lock oracle.security.jps.az.internal.runtime.notifier.RuntimeEventNotifierImpl@16e2e213 WAITING

            java.lang.Object.wait(Native Method)

            java.lang.Object.wait(Object.java:503)

            oracle.security.jps.az.internal.runtime.notifier.RuntimeEventNotifierImpl.run(RuntimeEventNotifierImpl.java:230)

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

        "JMX Framework document pooling thread" TIMED_WAITING

            java.lang.Thread.sleep(Native Method)

            oracle.as.config.notification.filesystem.WatchingDocumentChangeNotifier.run(WatchingDocumentChangeNotifier.java:252)

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

        "JPS FileChangeNotifier<clean-only>" waiting for lock java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@2ca6ce6a TIMED_WAITING         
            sun.misc.Unsafe.park(Native Method)
            java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)         
            java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2082)
            java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1090)
            java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:807)
            java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
            java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
            java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
            java.lang.Thread.run(Thread.java:745)
        "DoSManager" TIMED_WAITING
            java.lang.Thread.sleep(Native Method)         
            com.octetstring.vde.DoSManager.run(DoSManager.java:433)

        "VDE Transaction Processor Thread" waiting for lock com.octetstring.vde.backend.standard.TransactionProcessor@2c568d5b WAITING 
            java.lang.Object.wait(Native Method)         
            java.lang.Object.wait(Object.java:503)         
            com.octetstring.vde.backend.standard.TransactionProcessor.waitChange(TransactionProcessor.java:367)         
            com.octetstring.vde.backend.standard.TransactionProcessor.run(TransactionProcessor.java:212)         
        "ExecuteThread: '3' for queue: 'weblogic.socket.Muxer'" waiting for lock weblogic.socket.PosixSocketMuxer$1@3968b775 BLOCKED         
            weblogic.socket.PosixSocketMuxer.processSockets(PosixSocketMuxer.java:93)        
            weblogic.socket.SocketReaderRequest.run(SocketReaderRequest.java:29)      
            weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:42)       
            weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:145)       
            weblogic.kernel.ExecuteThread.run(ExecuteThread.java:117)

        "ExecuteThread: '2' for queue: 'weblogic.socket.Muxer'" waiting for lock weblogic.socket.PosixSocketMuxer$1@3968b775 BLOCKED       
            weblogic.socket.PosixSocketMuxer.processSockets(PosixSocketMuxer.java:93)       
            weblogic.socket.SocketReaderRequest.run(SocketReaderRequest.java:29)        
            weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:42)         
            weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:145)        
            weblogic.kernel.ExecuteThread.run(ExecuteThread.java:117)

        "ExecuteThread: '1' for queue: 'weblogic.socket.Muxer'" RUNNABLE native
            weblogic.socket.PosixSocketMuxer.poll(Native Method)         
            weblogic.socket.PosixSocketMuxer.processSockets(PosixSocketMuxer.java:102)
            weblogic.socket.SocketReaderRequest.run(SocketReaderRequest.java:29)
            weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:42)         
            weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:145)         
            weblogic.kernel.ExecuteThread.run(ExecuteThread.java:117)
        "ExecuteThread: '0' for queue: 'weblogic.socket.Muxer'" waiting for lock weblogic.socket.PosixSocketMuxer$1@3968b775 BLOCKED         
            weblogic.socket.PosixSocketMuxer.processSockets(PosixSocketMuxer.java:93)         
            weblogic.socket.SocketReaderRequest.run(SocketReaderRequest.java:29)         
            weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:42)         
            weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:145)         
            weblogic.kernel.ExecuteThread.run(ExecuteThread.java:117)         
        "Thread-12" waiting for lock java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@34fb382c WAITING         
            sun.misc.Unsafe.park(Native Method)         
            java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)        
            java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)         
            java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)         
            weblogic.utils.concurrent.JDK15ConcurrentBlockingQueue.take(JDK15ConcurrentBlockingQueue.java:89)         
            weblogic.store.internal.PersistentStoreImpl.getOutstandingWork(PersistentStoreImpl.java:676)        
            weblogic.store.internal.PersistentStoreImpl.run(PersistentStoreImpl.java:751)        
            java.lang.Thread.run(Thread.java:745)        
        "Timer-2" waiting for lock java.util.TaskQueue@6f9ecd9 TIMED_WAITING         
            java.lang.Object.wait(Native Method)         
            java.util.TimerThread.mainLoop(Timer.java:552)         
            java.util.TimerThread.run(Timer.java:505)
        "weblogic.timers.TimerThread" waiting for lock java.lang.Object@118edefb TIMED_WAITING       
            java.lang.Object.wait(Native Method)     
            weblogic.timers.internal.TimerThread.doWait(TimerThread.java:114)     
            weblogic.timers.internal.TimerThread.access$000(TimerThread.java:22)      
            weblogic.timers.internal.TimerThread$Thread.run(TimerThread.java:290)       
        "weblogic.time.TimeEventGenerator" waiting for lock weblogic.time.common.internal.TimeTable@19aa5071 TIMED_WAITING        
            java.lang.Object.wait(Native Method)        
            weblogic.time.common.internal.TimeTable.snooze(TimeTable.java:286)         
            weblogic.time.common.internal.TimeEventGenerator.run(TimeEventGenerator.java:117)         
            java.lang.Thread.run(Thread.java:745)
        "[STUCK] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'" RUNNABLE
            java.util.ArrayList.fastRemove(ArrayList.java:523)         
            java.util.ArrayList.remove(ArrayList.java:511)
            com.bea.adaptive.harvester.jmx.RegistrationManager.instanceDeletedInternal(RegistrationManager.java:290)
            com.bea.adaptive.harvester.jmx.RegistrationManager.instanceDeleted(RegistrationManager.java:257)
            com.bea.adaptive.mbean.typing.JMXNotificationListener.deletedInstance(JMXNotificationListener.java:291)         
            com.bea.adaptive.mbean.typing.JMXNotificationListener.processRegistrationEvent(JMXNotificationListener.java:313)        
            com.bea.adaptive.mbean.typing.JMXNotificationListener.access$300(JMXNotificationListener.java:37)       
            com.bea.adaptive.mbean.typing.JMXNotificationListener$MBeanRegistrationWork.run(JMXNotificationListener.java:108)         
            weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:550)         
            weblogic.work.ExecuteThread.execute(ExecuteThread.java:263)        
            weblogic.work.ExecuteThread.run(ExecuteThread.java:221)        
        "Timer-1" waiting for lock java.util.TaskQueue@5f09fd6d TIMED_WAITING

            java.lang.Object.wait(Native Method)

            java.util.TimerThread.mainLoop(Timer.java:552)

            java.util.TimerThread.run(Timer.java:505)

        "Timer-0" waiting for lock java.util.TaskQueue@717095c1 WAITING

            java.lang.Object.wait(Native Method)

            java.lang.Object.wait(Object.java:503)

            java.util.TimerThread.mainLoop(Timer.java:526)

            java.util.TimerThread.run(Timer.java:505)

        "AD Thread-Top Backends Processor0" waiting for lock java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@1b2ca3e0 TIMED_WAITING

            sun.misc.Unsafe.park(Native Method)

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

            java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2082)

            java.util.concurrent.DelayQueue.take(DelayQueue.java:220)

            com.singularity.ee.util.javaspecific.scheduler.v.c(v.java:755)

            com.singularity.ee.util.javaspecific.scheduler.v.take(v.java:695)

            com.singularity.ee.util.javaspecific.scheduler.w.a(w.java:500)

            com.singularity.ee.util.javaspecific.scheduler.i.run(i.java:725)

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

        "AD Thread-Metric Reporter1" waiting for lock java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@32fa1581 WAITING
            sun.misc.Unsafe.park(Native Method) 
            java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)   
            java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)   
            java.util.concurrent.DelayQueue.take(DelayQueue.java:215)    
            com.singularity.ee.util.javaspecific.scheduler.v.c(v.java:755)
            com.singularity.ee.util.javaspecific.scheduler.v.take(v.java:695)
            com.singularity.ee.util.javaspecific.scheduler.w.a(w.java:500
         com.singularity.ee.util.javaspecific.scheduler.i.run(i.java:725)

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

        "AD Thread-Config Poller" TIMED_WAITING

            java.lang.Thread.sleep(Native Method)

            com.singularity.util.org.apache.log4j.helpers.FileWatchdog.run(FileWatchdog.java:101)

        "Thread-1" TIMED_WAITING

            java.lang.Thread.sleep(Native Method)

            com.singularity.util.org.apache.log4j.helpers.FileWatchdog.run(FileWatchdog.java:101)

        "Signal Dispatcher" RUNNABLE

        "Finalizer" waiting for lock java.lang.ref.ReferenceQueue$Lock@3272350 WAITING

            java.lang.Object.wait(Native Method)

            java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:135)

            java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:151)

            java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209)        
        "Reference Handler" waiting for lock java.lang.ref.Reference$Lock@5b22899c WAITING         
            java.lang.Object.wait(Native Method)
            java.lang.Object.wait(Object.java:503)        
            java.lang.ref.Reference$ReferenceHandler.run(Reference.java:133)     
        "main" waiting for lock weblogic.t3.srvr.T3Srvr@3ecacc87 WAITING    
            java.lang.Object.wait(Native Method)     
            java.lang.Object.wait(Object.java:503)     
            weblogic.t3.srvr.T3Srvr.waitForDeath(T3Srvr.java:983)     
            weblogic.t3.srvr.T3Srvr.run(T3Srvr.java:492)      
            weblogic.Server.main(Server.java:71)

`

1 个答案:

答案 0 :(得分:0)

首先,永远不要仅使用1个转储对卡住的线程进行故障排除,始终要进行3-4个转储,每个转储的间隔约为3-4秒。

您提供的线程转储似乎很好,一个标记为“阻塞”的线程似乎在您尝试卸载组合的位置,卸载确实花费时间并导致1个线程被阻塞,这很少或没有。会对服务器功能产​​生任何影响。