मैं वर्तमान में VisualVM का उपयोग कर रहा हूं, लेकिन मेरी समस्या यह है कि मैं इसे उत्पन्न ग्राफ को सहेज नहीं सकता। मुझे इसके मेमोरी उपयोग और चलने वाले समय के बारे में कुछ डेटा रिपोर्ट करने की आवश्यकता है, हालांकि System.nanoTime()
के साथ चलने का समय आसान है। मैंने नेटबीन प्रोफाइलर भी कोशिश की है, लेकिन यह वही नहीं है जो मैं चाहता हूं, क्योंकि मैं उन विशिष्ट हिस्सों की तलाश नहीं कर रहा हूं जो इसे धीमा कर देंगे या कुछ भी हो जाएंगे, जिससे यह अधिक हो जाएगा। इसके साथ सबसे बड़ी समस्या यह है कि यह बहुत अधिक प्रसंस्करण समय खाती है। मुझे आसानी से डेटा को कैप्चर/ट्रांसफर करने की अनुमति नहीं देता है, जैसे कि VisualVM, कम से कम जहां तक मैं कह सकता हूं।जावा प्रोग्राम के मेमोरी उपयोग को मापने का सबसे अच्छा तरीका?
आदर्श रूप से इसके बारे में जाने का सबसे अच्छा तरीका कुछ विधि कॉल होगा क्योंकि तब मैं जानकारी को और अधिक आसानी से प्राप्त कर पाऊंगा, लेकिन विजुअलVM जैसी कुछ भी जो वास्तव में मुझे ग्राफ को सहेजने देती है ठीक है। NetBeans प्रोफाइलर की तुलना में VisualVM के साथ प्रदर्शन भी बहुत अच्छा है, हालांकि मुझे लगता है कि ऐसा इसलिए है क्योंकि मैं अपने प्रोफाइलर का उपयोग नहीं कर रहा था।
मैं वर्तमान में उबंटू का उपयोग कर रहा हूं, लेकिन विंडोज 7 ठीक है। मेरे पास ऐसा प्रोग्राम होगा जो ऐसा करने में माहिर है, हालांकि उन कार्यक्रमों द्वारा प्राप्त जानकारी जो जेवीएम और अन्य चीजों को शामिल करने की संभावना नहीं है, जो बेहतर छोड़ दी जाएंगी।
ठीक है, जाहिर है, आप वर्तमान सत्र के स्नैपशॉट्स को सहेज सकते हैं और विंडो को विजुअलVM में अधिकतम कर सकते हैं, ताकि आप चार्ट को बड़ा कर सकें, स्नैपशॉट ले सकें और उन्हें काट सकें ... लेकिन यह एक हैक है। बेहतर सुझाव स्वागत है।