2012-09-05 11 views
20

मैं जानना चाहता हूं कि जावा थ्रेड डंप क्या है। क्या कोई मुझे समझने में मदद कर सकता है कि थ्रेड डंप क्या है और यह एक चल रहे जावा प्रोग्राम से कैसे संबंधित है?"थ्रेड डंप" का अर्थ क्या है

+2

यह सचमुच नाम और ढेर (जहां उदासीनता कार्यक्रम चल रहा है) हर धागे का। इसका उपयोग यह जानने में मदद के लिए किया जा सकता है कि आपका प्रोग्राम क्या कर रहा है। VisualVM आपकी प्रक्रिया में सभी धागे को देखने के सर्वोत्तम तरीकों में से एक है। –

+5

* "कृपया मुझे कुछ ज्ञान साझा करें।" * खोजशब्दों को खोज इंजन में डालकर इन सवालों का अक्सर उत्तर दिया जा सकता है। इस मामले में, "जावा + थ्रेड + डंप" पर खोजें। –

+10

बस "थ्रेड डंप अर्थ" के लिए googled और पहला परिणाम यह stackoverflow सवाल था। यही कारण है कि सभी प्रकार के देवताओं के लिए स्टैक ओवरफ्लो एक महान मंच बनाता है, मूल प्रश्नों को निराश नहीं किया जाना चाहिए। –

उत्तर

23

जावा थ्रेड डंप यह जानने का एक तरीका है कि JVM में प्रत्येक थ्रेड किसी विशेष बिंदु पर क्या कर रहा है। यह विशेष रूप से उपयोगी होता है यदि लोड के दौरान चलने पर आपका जावा एप्लिकेशन कभी-कभी लटकता प्रतीत होता है, क्योंकि डंप के विश्लेषण से पता चलता है कि थ्रेड फंस गए हैं।

आप kill -QUIT <pid> चलाकर Unix/Linux के तहत एक धागा डंप उत्पन्न, और Ctl + Break मारकर Windows के तहत कर सकते हैं।

पता है कि कैसे JVM see here से

धागा डंप लेने के लिए पता करने के लिए धागा डंप see here

बनाने का तरीका अधिक जानकारी के लिए: Java Sanity

+0

"समय पर एक विशेष बिंदु पर" क्या हम किसी भी तरह की अवधि को परिभाषित कर सकते हैं जिसके लिए डंप बनाया जाता है? –

0

एक धागा डंप के राज्य के एक आउटपुट है जब आपका प्रोग्राम विफल हुआ तो उस बिंदु पर कॉल स्टैक करें। इससे आपको काम करना चाहिए कि कार्यक्रम में गलत होना चाहते हैं, क्योंकि यह दिखाता है कि कार्यक्रम वास्तव में क्या कर रहा था (और क्यों)।

क्या आपके पास थ्रेड डंप है जिसकी आपको आवश्यकता है?

13

http://www.javasanity.org/understandingthreaddumps से:

धागा डंप वास्तव में क्या समय में एक पल में क्रियान्वित कर रहा है का एक स्नैपशॉट

संसाधनों के बहुत सारे हैं वहाँ बाहर है कि आप समझ सकते हैं/एक धागा विश्लेषण है डंप (उदाहरण के लिए http://www.javacodegeeks.com/2012/03/jvm-how-to-analyze-thread-dump.html)।

तुम भी निम्नलिखित प्रश्न उपयोगी लग सकते: Thread Dump Analysis Tool/Method

2

"एक धागा डंप सभी जावा धागे है कि वर्तमान में एक जावा वर्चुअल मशीन (JVM) में सक्रिय हैं की एक सूची है।" (link)

आमतौर पर, इस सूची में एक धागा अपने वर्तमान स्टैकट्रेस और धागे के राज्य का प्रतिनिधित्व करती है (चल रहा है, को निलंबित कर दिया, बंद कर दिया, आदि)

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