Nel mio progetto corrente ho notato che IE utilizza molta memoria. Trascorso un po 'di tempo di indagine ho scoperto che le immagini non vengono rimosse dalla memoria, ma il mio sito utilizza le immagini in modo abbastanza intuitivo.Cache immagine IE8 o errore?
Infine ho creato un semplice test che carica dinamicamente le immagini e poi libera utilizzando jQuery
miei JS prova:
$(document).ready(function() {
$('#appendImages').click(append);
$('#removeImages').click(remove);
});
function append() {
$.post("http://localhost/TestService/GetImages", { key: $('#key').val()}, function (data) {
$.each(data.Data.items, function (i, v) {
$('#imagesContainer').append('<img src="' + v.imageUrl + '" />');
}); ;
});
}
function remove() {
$('#imagesContainer').empty();
}
test html:
<input id="key" type="text" value="jeans" >
<div id="reset">Reset</div>
<div id="repeatableReset">Repeatable Reset</div>
<div id="stop">Stop</div>
<br />
<br />
<br />
<br />
<div id="appendImages">append</div>
<div id="removeImages">remove</div>
<div id="imagesContainer"></div>
<html>
</html>
Mentre aggiungendo nuovi le immagini della memoria IE stanno aumentando. Ma dopo aver rimosso tutte le immagini caricate, la memoria non viene cancellata. Ad esempio, subito dopo il caricamento della pagina, il processo IE utilizza 20 MB, dopo l'aggiunta delle immagini utilizza 35 MB, dopo la cancellazione, 30 MB.
Ho usato lo strumento SIEVE per trovare una soluzione ma non ha rivelato perdite. IE memorizza la cache in qualche modo sulle immagini? C'è qualche problema in IE per gestire gli elementi dell'immagine creati dinamicamente?
Aggiornamento Nel livello di memoria di Firefox rimane costante, ma in IE è in aumento.
Il limite massimo di memoria abbiamo assistito è 350 MB per il nostro sito. Per favore correggimi se sbaglio, ma questo è abbastanza. La maggior parte dei siti non ha raggiunto il limite di 100 MB. – lostaman
@lostaman - Sì, questo è incredibilmente grande. Non sono sicuro di come risolvere il problema della memoria a meno che non abbiate usato il metatag della cache no per non memorizzare nulla. Sai qual è l'utilizzo della memoria per altri browser? Sarebbe utile: sarebbe ovvio se si trattasse di un problema di IE o di un problema di codice. – Bojangles
Ho scoperto una cosa interessante. Se apro il sito Google e provo a utilizzare intensivamente la ricerca dell'istanza (nessun aggiornamento della pagina), il livello di memoria in IE sta aumentando. Sono riuscito a raggiungere 200 MB di livello semplicemente digitando diverse combinazioni. In Firefox tutto funziona. Può essere solo IE memorizza i contenuti in qualche modo se i componenti di ajax sono utilizzati intensivamente. – lostaman