简体   繁体   English

IBM Websphere 7.1线程转储

[英]IBM Websphere 7.1 thread dumps

I am trying to understand the concurreny anaylysis logged in thread dumps.. 1) Say i have two threads A and B, If thread A hs lock on few rows (oracle 10g) and my thread B is trying to update same ROw soo ideally in my thread dumps i should get Thread B waiting for thread A Second Senario Now suppose Thread A is locking on a block of code and Thread B tries to enter and i take thread dumps soo in my dumos i should again see Thread B trying to get a monitor held by thread A.. 我试图了解在线程转储中记录的并发分析。1)说我有两个线程A和B,如果线程A hs锁定了几行(oracle 10g),而我的线程B则试图在理想情况下更新相同的行我的线程转储我应该让线程B等待线程A第二个Senario现在,假设线程A锁定在一个代码块上,线程B试图进入,并且我把线程转储也放入了dumos中,我应该再次看到线程B试图获取一个线程线程A.持有的监视器

My question is from Thread Dumps how can i verify if thread A is waiting for a something that is held by thread A is at Code level or query level???? 我的问题来自线程转储,我该如何验证线程A是否正在等待代码A或查询级别的线程A持有的东西?

Second Question .... in "LOCKS subcomponent dump routine" “ LOCKS子组件转储例程”中的第二个问题....

I see many many locks but i couln'd see which thread is holding this resource 我看到很多锁,但是我很想知道哪个线程正在保存此资源
ie it should say like Own by thread 10 but its saying "unowned" 即它应该说像由线程10拥有,但其说法是“无主”

Third Question 第三题

for reference please refer below sample 供参考,请参考以下样品

3XMTHREADINFO "Multicast Heartbeat Receiver Thread" J9VMThread:0x0000000033896700, j9thread_t:0x00000001217D9FC0, java/lang/Thread:0x000000004E017320, state:CW, prio=5 3XMTHREADINFO1 (native thread ID:0x5CD0E2B, native priority:0x5, native policy:UNKNOWN) 3XMTHREADINFO3 Java callstack: 4XESTACKTRACE at java/net/PlainDatagramSocketImpl.receive0(Native Method) 4XESTACKTRACE at java/net/PlainDatagramSocketImpl.receive(PlainDatagramSocketImpl.java:164(Compiled Code)) 4XESTACKTRACE at java/net/DatagramSocket.receive(DatagramSocket.java:721(Compiled Code)) 4XESTACKTRACE at net/sf/ehcache/distribution/MulticastKeepaliveHeartbeatReceiver$MulticastReceiverThread.run(MulticastKeepaliveHeartbeatReceiver.java:124) 3XMTHREADINFO3 Native callstack: 4XENATIVESTACK _event_wait+0x344 (0x09000000007AD9C8 [libpthreads.a+0x169c8]) 4XENATIVESTACK _cond_wait_local+0x4dc (0x09000000007BBBA0 [libpthreads.a+0x24ba0]) 4XENATIVESTACK _cond_wait+0xc8 (0x09000000007BC18C [libpthreads.a+0x2518c]) 4XENATIVESTACK pth 3XMTHREADINFO“多播心跳接收器线程” J9VMThread:0x0000000033896700,j9thread_t:0x00000001217D9FC0,java / lang / Thread:0x000000004E017320,状态:CW,PRIO = 5 3XMTHREADINFO1(本地线程ID:0x5CD0E2B,本地优先级:0x5READN,本地策略3):UNK调用堆栈:java / net / PlainDatagramSocketImpl.receive0(本机方法)上的4XESTACKTRACE(java / net / PlainDatagramSocketImpl.receive(PlainDatagramSocketImpl.java:164(Compiled Code))处的4XESTACKTRACE在java / net / DatagramSocket.receive(DatagramSocket.721: (已编译代码))4XESTACKTRACE,位于net / sf / ehcache / distribution / MulticastKeepaliveHeartbeatReceiver $ MulticastReceiverThread.run(MulticastKeepaliveHeartbeatReceiver.java:124)3XMTHREADINFO3本机调用堆栈:4XENATIVESTACK _event_wait + waitx0x4x0x4a(0x8a8x4x9x0x9x0x9x0x4a(0x09A) 0x09000000007BBBA0 [libpthreads.a + 0x24ba0])4XENATIVESTACK _cond_wait + 0xc8(0x09000000007BC18C [libpthreads.a + 0x2518c])4XENATIVESTACK pth read_cond_wait+0x19c (0x09000000007BCDE0 [libpthreads.a+0x25de0]) 4XENATIVESTACK (0x090000004BD4FB64 [libj9thr24.so+0x4b64]) read_cond_wait + 0x19c(0x09000000007BCDE0 [libpthreads.a + 0x25de0])4XENATIVESTACK(0x090000004BD4FB64 [libj9thr24.so + 0x4b64])

Now its in Conditional Wait , But how can i proceed the reason for conditional wait.,. 现在它在条件等待中,但是我该如何继续条件等待的原因。 coz i can't see any thing like waiting on something curretnly owned is some thing else?? 因为我看不到任何东西,如等待当前拥有的东西是其他东西?

You have to monitor the lock on resource, and see if the threads blocked waiting for a condition remain the same during time (possible deadlock) or dynamically change 您必须监视对资源的锁定,并查看在一段时间内阻塞等待条件的线程是否保持不变(可能发生死锁)或动态更改

I strongly advise you to take three java cores with an interval of some minute and then open them with Thread Analyzer 我强烈建议您每隔几分钟就取三个Java内核,然后用线程分析器打开它们

https://www.ibm.com/developerworks/community/groups/service/html/communityview?communityUuid=2245aa39-fa5c-4475-b891-14c205f7333c https://www.ibm.com/developerworks/community/groups/service/html/communityview?communityUuid=2245aa39-fa5c-4475-b891-14c205f7333c

Let us know in case you need more help 如果您需要更多帮助,请告诉我们

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM