कक्षा में लोड होने और जेवीएम में नष्ट होने पर मैं ट्रैक कैसे रखूं? क्या कोई कॉलबैक विधि है जो जेवीएम द्वारा उजागर की जाती है?जेवीएम में कक्षा कब लोड और नष्ट होने पर ट्रैक कैसे करें?
उत्तर
आप कक्षा लोडिंग का पता लगाने के लिए स्थिर ब्लॉक का उपयोग कर सकते हैं लेकिन आप कक्षा अनलोडिंग का पता नहीं लगा सकते हैं। जावा में सिस्टम क्लासलोडर के माध्यम से लोड किए गए सभी वर्गों को कभी भी अनलोड नहीं किया जाएगा और अन्य क्लासलोडर के माध्यम से लोड किए गए सभी वर्ग केवल तभी लोड किए जाएंगे जब क्लासलोडर अनलोड हो।
static{
//execute when the class will be loaded
}
आप जावा में जोड़ सकते हैं देखने के लिए कि किस वर्ग के माध्यम से भरी हुई है चुनता है:
java -verbose:class
नष्ट वर्ग के बारे में, मुझे यकीन है कि नहीं हूँ।
क्या आप यह जानकारी अपने आवेदन में चाहते हैं या आप इसे बाहर से ही विश्लेषण करना चाहते हैं? बाद के मामले में आप इसके लिए VisualVM का उपयोग कर सकते हैं। शायद आपका प्रश्न इस से संबंधित है: Loaded classes in VisualVM।
आप अपनी जावा प्रक्रिया में command line option-verbose:class
जोड़ सकते हैं, यह लोड होने वाली प्रत्येक कक्षा के बारे में जानकारी प्रदर्शित करेगा।
आप स्थिर रचनाकार में कक्षा के निर्माण को ट्रैक कर सकते हैं। और जहां तक मेरा संबंध है, आप इसे विनाश को ट्रैक नहीं कर सकते। कक्षाएं केवल अनलोड हो जाती हैं जब जीसी क्लासलोडर को एकत्र करता है जिसका उपयोग कक्षाओं को लोड करने के लिए किया जाता था।
आप भी इस पढ़ने में रुचि हो सकती है: another question on classloaders at StackOverflow
हैं JRockit JVM उपयोग करने के साथ ठीक कर रहे हैं, तो आप नीचे API का उपयोग, जो आप तरीकों को कालबैक दे देंगे जब एक वर्ग भरी हुई है और वर्ग उतार दिया जाता है कर सकते हैं।
JVM कक्षा पर एक नज़र डालें, जिसमें से हम getClassLibrary()
विधि का उपयोग करना चाहते हैं।
classLibrary वस्तु पर हम किसी घटना के समय वर्ग के नाम आदि
देता है आप एक सूर्य/Oracle JVM का उपयोग कर रहे हैं, तो आप TraceClassLoading
और TraceClassUnloading
विकल्प इस्तेमाल कर सकते हैं classloading के लिए श्रोताओं रजिस्टर कर सकते हैं। क्या विकल्प आपके JVM का समर्थन करता है देखने के लिए निम्नलिखित का उपयोग करें:
java -XX:+AggressiveOpts -XX:+UnlockDiagnosticVMOptions -XX:+UnlockExperimentalVMOptions -XX:+PrintFlagsFinal -version
तो इन विकल्पों का समर्थन कर रहे, -XX:+TraceClassLoading -XX:+TraceClassUnloading
का उपयोग कर अपने जावा अनुप्रयोग चलाते हैं। आपको संदेश देखना चाहिए:
[Loaded ... from ...]
[Unloading class ...]
- 1. सी ++ में कक्षा नष्ट होने पर संदर्भ गुण नष्ट हो जाते हैं?
- 2. कक्षा के विभिन्न हिस्सों को जेवीएम में लोड होने पर किस क्रम में प्रारंभ किया जाता है?
- 3. tinyMce को कैसे नष्ट करें?
- 4. "डीएलएल लोड विफल" ट्रैक
- 5. एंड्रॉइड में ऐप उपयोग कैसे ट्रैक करें? एक गतिविधि लॉन्च होने पर कैसे पता लगाया जाए?
- 6. उचित होने पर ऑनबेरनलोड लोड कैसे प्रदर्शित करें?
- 7. डीएलआईएमपोर्ट, डीएलएल लोड होने पर जांच कैसे करें?
- 8. वीबीए में कक्षा का उपयोग कब करें?
- 9. जेवीएम कैसे फोर्क करें?
- 10. जेवीएम में डिफ़ॉल्ट पैरामीटर कैसे सेट करें?
- 11. SQL सर्वर में स्वचालित रूप से कोई पंक्ति बनाई/अपडेट होने पर ट्रैक कैसे करें?
- 12. पेज लोड पर प्रीरेंडर का उपयोग कब करें?
- 13. एंड्रॉइड में बाइट सरणी से कक्षा को कैसे लोड करें?
- 14. जावास्क्रिप्ट में एक चर लोड होने पर कैसे जांचें?
- 15. क्रोम एक्सटेंशन में डीओएम परिवर्तन को कैसे ट्रैक करें?
- 16. स्मार्ट जेवीएम और जेआईटी माइक्रो-ऑप्टिमाइजेशन
- 17. जेवीएम और निजी विधियां
- 18. रूबी में 'आवश्यकता', 'लोड` या' ऑटोलोड 'का उपयोग कब करें?
- 19. जेवीएम - हीप और स्टैक
- 20. एंजुलरजेस ऐप को कैसे नष्ट करें?
- 21. क्या निर्धारित करता है कि PHP में कक्षा ऑब्जेक्ट कब नष्ट हो जाता है?
- 22. एक्स्टजेस में सभी स्टोर लोड होने तक प्रतीक्षा कैसे करें?
- 23. कोई छवि लोड नहीं होने पर कुछ करें (jquery)
- 24. एंडेंगिन में एक दृश्य को कैसे नष्ट और पुनर्निर्मित करें?
- 25. शरीर पर लोड कब होता है?
- 26. कक्षा लोड
- 27. टुकड़े को कैसे नष्ट करें?
- 28. फ़ाइल लोड होने पर लोड डेटा INFILE कथन का उपयोग कैसे करें?
- 29. ग्रैंड सेंट्रल डिस्पैच - लोड होने पर पहली छवि प्रदर्शित करें?
- 30. PHP: सार और इंटरफ़ेस कक्षा का उपयोग कब करें?
आप यहां दो प्रश्न पूछ रहे हैं। आप वास्तव में क्या सीखने की कोशिश कर रहे हैं, या पूरा करने की कोशिश कर रहे हैं? एक बार जब आप इसे समझ लेंगे, तो उस उत्तर को स्वीकार करें जिसने आपको सबसे ज्यादा मदद की है। – Frans