2011-06-30 13 views
5

JVisualVM जेएमएक्स पर जावा प्रक्रिया से जुड़ता है और बटन के क्लिक के माध्यम से थ्रेड डंप का उत्पादन कर सकता है। मैं अपने स्वयं के एप्लिकेशन में एक समान सुविधा जोड़ना चाहता हूं ताकि यह दूरस्थ सेवाओं से थ्रेड डंप का अनुरोध कर सके।जावा थ्रेड डंप को दूरस्थ रूप से पुनर्प्राप्त करने के लिए कैसे करें

इस जानकारी को प्राप्त करने के लिए मुझे कौन से एमबीएन पूछताछ की आवश्यकता है? और कैसे?

उत्तर

9

आप नाम "java.lang:type=Threading" नाम के साथ एमबीन का उपयोग कर सकते हैं। इसका इंटरफ़ेस here वर्णित है।

थ्रेड डंप प्राप्त करने के लिए आपको पहले getAllThreadIds विधि का उपयोग करने की आवश्यकता है और फिर सभी पुनर्प्राप्त आईडी के माध्यम से लूप करें और उनमें से प्रत्येक के लिए getThreadInfo विधि पर कॉल करें।

4

आप ThreadMXBean प्रबंधन इंटरफ़ेस का उपयोग कर सकते हैं।

यह FullThreadDump कक्षा पूर्ण थ्रेड डंप प्राप्त करने की क्षमता को प्रदर्शित करती है और जेएमएक्स का उपयोग करके दूरस्थ रूप से डेडलॉक का पता लगाती है।

संबंधित मुद्दे