मेरे पास एक पंजीकृत शटडाउन हुक के साथ जावा (1.6) में चल रही एक महत्वपूर्ण प्रक्रिया है। कुछ उदाहरण में जहां मुझे ओओएम मुद्दा मिलता है (इस मुद्दे के बारे में अधिक जानकारी), प्रक्रिया अचानक बंद हो जाती है, मुझे अपने किसी भी लॉग नहीं मिलते हैं, मेरा पकड़ (थ्रोबल एक्स) अपवाद को पकड़ नहीं रहा है।जेवीएम: क्या यह पता लगाना संभव है कि शटडाउन हुक में ओओएम के कारण प्रक्रिया बंद हो रही है?
लेकिन शटडाउन हुक काम करता है। तो अगर यह जानने का कोई तरीका था कि कुछ बुरा ओओएम के कारण प्रक्रिया बंद हो जाएगी, तो मैं बाहर निकलने से पहले आवश्यक जानकारी लॉग कर सकता हूं।
क्या ऐसा करने का कोई तरीका है?
ओओएम: सुनिश्चित नहीं है कि अपवाद क्या है क्योंकि जैसा कि मैंने कहा था कि यह पकड़ा नहीं जाता है। मुझे पता है कि यह ओओएम है क्योंकि मैं प्रक्रिया को
-XX:+HeapDumpOnOutOfMemoryError
और मुझे एक ढेर डंप फ़ाइल मिलती है। अन्य मामलों में एक अपवाद पकड़ा जाता है, और यह एक ava.lang.OutOfMemoryError: जीसी ओवरहेड सीमा पार हो गई। लेकिन यकीन नहीं है कि यह हमेशा इस मामले में है।
संपादित करें:
मामले में यह स्पष्ट नहीं है: मैं OOM के रूप में यह कुछ परिदृश्य में वैध कारणों से हो सकता रोकने का प्रयास कर नहीं कर रहा हूँ, मैं सिर्फ बनाना चाहते यकीन है कि यह में स्पष्ट है ऐप लॉग फाइल
मेरा प्रश्न है: क्या यह पता लगाना संभव है कि शटडाउन हुक में ओओएम के कारण प्रक्रिया बंद हो रही है?
मुझे यह प्रक्रिया प्रोग्रामिंग और उसी प्रक्रिया से करने की आवश्यकता है।
अब के लिए सबसे अच्छा तरीका यह देखने के लिए है कि क्या यह हालिया तारीख के साथ process_.hprof (मुझे पिड पता है) की एक हीप डंप फ़ाइल java_pid_pid मौजूद है और एक ओओएम था। मुझे लगता है कि मैं Runtime.getRuntime()। FreeMemory() को आजमा सकता हूं और अगर समस्या उपलब्ध हो तो समस्या की रिपोर्ट करें, लेकिन यह सुनिश्चित नहीं है कि यह कितना विश्वसनीय है, शायद जब प्रक्रिया बंद हो रही है तो यह पहले से ही बहुत मेमोरी जारी कर चुका है, उपरोक्त दृष्टिकोण मुझे लगता है कि सबसे अच्छा है।
तो आपका प्रश्न है: "क्या होता है?" - सही? – dacwe
प्रश्न से नाराज न हों, लेकिन क्या आप (अपवाद एक्स) पकड़ते हैं या पकड़ते हैं (थ्रोबल एक्स) ओओएम थ्रोबल है, मुझे यकीन है कि आप जानते हैं और यदि ऐसा होता है तो शायद इसे पकड़ने की संभावना नहीं है, लेकिन फिर भी चेकिंग के लायक ... –
जैसा कि मैंने उल्लेख किया है (शायद यह स्पष्ट नहीं है, मैं फिर से संपादित करूंगा) मेरे पास एक पकड़ (थ्रोबल एक्स) प्रभाव नहीं पड़ रहा है। धन्यवाद – Persimmonium