Sur mon projet actuel, j'ai remarqué que IE utilise beaucoup de mémoire. Passé un certain temps d'enquête, j'ai découvert que les images ne sont pas supprimées de la mémoire, mais mon site utilise des images assez intensément.Mise en cache ou erreur d'image IE8?
Enfin, j'ai créé un test simple qui charge dynamiquement des images et efface ensuite à l'aide de jQuery
Mes js test:
$(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();
}
html Test:
<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>
Alors que annexant nouveau images la mémoire IE est en augmentation. Mais après avoir supprimé toutes les images chargées, la mémoire n'est pas effacée. Par exemple, juste après le chargement de la page IE processus utilise 20 Mo, après l'ajout d'images, il utilise 35 Mo, après avoir effacé - 30 Mo.
J'ai utilisé l'outil sIEve pour trouver n'importe quel leand mais il a décelé aucune fuite. Est-ce que cache IE en quelque sorte les images? Y a-t-il des problèmes dans IE pour gérer les éléments d'image créés dynamiquement?
Mise à jour Dans Firefox, le niveau de la mémoire reste constant, mais dans IE, il augmente.
La limite maximale de la mémoire, nous avons assisté est 350MB pour notre site. Corrigez-moi si je me trompe, mais c'est beaucoup. La plupart des sites n'ont pas atteint la limite de 100 Mo. – lostaman
@lostaman - Oui, c'est incroyablement grand. Je ne sais vraiment pas comment résoudre le problème de mémoire à moins que vous n'utilisiez la balise META no cache pour ne rien cacher du tout. Savez-vous quelle est l'utilisation de la mémoire pour les autres navigateurs? Ce serait pratique - il serait évident s'il s'agissait d'un problème d'IE ou d'un problème de code. – Bojangles
Trouvé quelque chose d'intéressant. Si j'ouvre le site Google et que j'essaie d'utiliser intensivement la recherche d'instance (pas d'actualisation de la page), le niveau de mémoire dans IE augmente. J'ai réussi à atteindre un niveau de 200 Mo en tapant différentes combinaisons. Dans Firefox tout fonctionne trouver. Il se peut que ce soit juste le contenu des caches IE si les composants ajax sont intensivement utilisés. – lostaman