簡體   English   中英

JTextArea占用大量內存

[英]JTextArea consumes a lot of memory

我在Java和Swing中遇到一些內存問題。 我有一個JTextArea (與JTextPane相同的問題),我可以使用它從C ++可執行文件中重定向標准輸出。 而且由於我要輸出很多標准輸出,因此JTextPane占用了大量空間。 無論如何,我將其簡化為以下代碼,全部使用Java。

private javax.swing.JTextArea jtextareastdout;
....

for (int i = 0; i < 200000; i++) {
    String randomstr = UUID.randomUUID().toString();

    jtextareastdout.setText(randomstr);  //<tag_memory>
    if (i % 100 == 0)
        System.gc(); //<tag_no_help>
}

上面的代碼消耗了100MB。 注釋掉tag_memory行后,它就少了很多(我的所有其他代碼和UI都有30MB)。 如何減少Java的內存使用量? 當前正在使用Java 7 Update 4。

提前致謝。

我只是不明白所有內存的去向。

PlainDocument講述了這個故事:每個代碼點一個或兩個16位代碼單元,一條線圖開始,並且所有使其成為可編輯狀態的障礙都必須存在。 對於只讀查看,我將使用重定向: yourprogram 2>&1 > view 在Java中,您可以從stdin讀取到List<String> ,每行一個String ,然后使用JTable查看。 默認渲染器非常有效。 有一個相關的例子在這里

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM