2012-01-28 10 views
5

मैं एक जेडडिटरपेन में लगभग 2 एमबी (परिशुद्धता के लिए 1 9 27 केबी) के लिए एक HTML फ़ाइल लोड करने की कोशिश कर रहा हूं, और इसमें लगभग 65 सेकंड लगते हैं, ऐसा लगता है कि यह JTextPane/JEditorPane की एक बग हैजेडडिटरपेन सेटटेक्स्ट 2 एमबी एचटीएमएल ---> भयानक प्रदर्शन !!! (65 सेकंड)

final String htmlContent = //Load a 2MB String 
previewPane.setContentType("text/html; charset=UTF-8");  
previewPane.setText(htmlContent); 

setText विधि 65seconds प्राप्त करने के बारे में लेता है:, मैं भी this one की तरह वेब पर कई लेख पढ़ा है, लेकिन मैं एक समाधान नहीं मिला ...

यहाँ कोड है कि मैं का उपयोग करें पूरी तरह से निष्पादित किया गया है जैसा कि आप मेरे एप्लिकेशन लॉग में देख सकते हैं:

Set the html content(1927KB) of the Preview pane, loading time=68230ms 
Set the html content(1927KB) of the Preview pane, loading time=62693ms 
Set the html content(1927KB) of the Preview pane, loading time=66583ms 

क्या इस समस्या को हल करने का कोई तरीका है?

बारे में 65 पाठ की 2 एमबी लोड करने के लिए सेकंड के डीडीआर 3 रैम 8GB के साथ एक इंटेल कोर 2 डुओ 2.93GHz पर एक भयानक प्रदर्शन है ...

+0

'// 2 एमबी स्ट्रिंग लोड करें (अगले 3 जीवन काल में पढ़ें) 'क्या उपयोग-मामला लगभग 2 एमबी HTML लोड करने का औचित्य देता है? –

+0

यह एक रिपोर्ट की एक सामग्री है जिसे मैं पूर्वावलोकनपैन में दिखाना चाहता हूं, 2 एमबी फ़ाइल इतनी बड़ी नहीं है ... – aleroot

+0

यह HTML की एक बड़ी राशि है। याद रखें कि इसे संसाधित करना है। तो अगर 2 जीबी प्रसंस्करण और सभी जीयूआई घटकों को बनाने के बाद भी बहुत कुछ प्रतीत नहीं होता है, तो मेमोरी पदचिह्न काफी बड़ा हो सकता है। ब्राउज़र या अन्य HTML संपादक के साथ अपना 2 एमबी एचटीएमएल खोलने का प्रयास करें और प्रदर्शन की तुलना करें ... –

उत्तर

3

हो सकता है चाल से कुछ मदद http://java-sl.com/JEditorPanePerformance.html

+0

मैंने पहले से ही इन चालों के साथ प्रयास किया है लेकिन वे केवल प्रतिपादन चरण में सुधार करते हैं लेकिन लोडिंग चरण (seText) नहीं ... मेरे प्रश्न में मैंने निर्दिष्ट किया था कि मैंने पहले से ही उन चालों को आजमाया है ... – aleroot

+0

क्या होता है अगर आप केवल दस्तावेज़ लोड करते हैं? शुद्ध नव निर्मित दस्तावेज़ को लोड करने के लिए आपको कितना समय चाहिए? TextPane.setDocument (docInstance) को कॉल करके दस्तावेज़ को प्रस्तुत करने के लिए आपको कितना समय चाहिए? – StanislavL

+0

पूर्वावलोकन फलक में HTML सामग्री (1 9 27 केबी) सेट करें, समय = 109051ms लोड करना यह बदतर है। – aleroot

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