Sto facendo un parsing xml e faccio una stringa replaceAll
che utilizza un'enorme quantità di spazio di memoria come mostrato nell'immagine qui sotto.La stringa sostituisce utilizzando un enorme spazio heap
Codice va come:
private final String getText() {
// special handling for apostrophe encoding
// site will expect both ' , ' and %27.
// change %27 or 'or ' to '
return _text.toString().trim().replaceAll("'", "'")
.replaceAll("'", "'").replaceAll("%27", "'");
}
Il metodo getText()
è spesso chiamata dal endElement()
metodo SAXParser.
Qualcuno può suggerire come si fa a cambiare questa funzionalità che utilizzerà meno spazio di heap
! [Trace] [1]
stai che fare con enormi nodi di testo nel vostro XML? – jtahlborn