Ich arbeite an einer Webanwendung, die entwickelt wurde, um eine Reihe von Daten anzuzeigen, die regelmäßig mit AJAX aktualisiert werden. Das allgemeine Benutzungsszenario wäre, dass ein Benutzer es den ganzen Tag offen lässt und ab und zu einen Blick darauf wirft.Verhindern von AJAX-Speicherlecks
Ich stoße auf ein Problem, bei dem der Speicherbedarf des Browsers im Laufe der Zeit langsam zunimmt. Dies geschieht sowohl in Firefox als auch in IE 7 (obwohl nicht in Chrome). Nach ein paar Stunden kann IE7 eine Grundfläche von ~ 200 MB und FF3 eine Grundfläche von ~ 400 MB haben.
Nach vielen Tests habe ich festgestellt, dass der Speicherverlust nur auftritt, wenn die AJAX-Anrufe beantwortet werden. Wenn der Server auf nichts reagiert, kann ich die Seite stundenlang geöffnet lassen und der Footprint wird nicht wachsen.
Ich verwende einen Prototyp für meine AJAX-Anrufe. Also, ich vermute, es gibt ein Problem mit dem OnSuccess Callback, der diese Speicherlecks erzeugt.
Hat jemand irgendwelche Tipps zur Verhinderung von Speicherlecks mit Prototyp/AJAX? Oder irgendwelche Methoden zur Problembehandlung?
EDIT: herausgefunden, das Problem liegt in einer js-Grafik-Bibliothek, die ich verwende. Kann gesehen werden here.
+1 Gute Informationen, obwohl ich nach dem ersten Laden der Seite nie neue Ereignisse erstelle. Immer noch versuchen herauszufinden, was ich mache, würde das Problem verursachen. –
Wenn Sie keine Ereignisse erstellen ... Warum haben Sie das als Ihre Antwort akzeptiert? – Sean