2017-05-10 2 views

Antwort

2

Ich glaube nicht, dass dies möglich ist - ein solcher Mechanismus würde einen zentralen Speicher aller Observable erfordern - was wiederum ein großes Risiko für Speicherlecks wäre.

Vorschlag # 1

Versuchen Sie in Ihrem Projekt für alle Anwendungen von .subscribe suchen und dann prüfen, ob jedes Ergebnis einen Mechanismus an einem gewissen Punkt austragen enthält. Jedes Handbuch .subscribe sollte einen Mechanismus zum Abmelden haben.

Vorschlag # 2

Verwenden Sie die DevTools Gedächtnis-/Heap-Snapshots im Laufe der Zeit zu erstellen, wenn weder der Speicher noch die Objekt-Zählung im Laufe der Zeit geht, während die App verwenden, können Sie recht sein Sicher, dass Speicherlecks kein Problem für Ihre Anwendung sind. Ich werde hier nicht näher auf die Verwendung der DevTools eingehen, denn das wäre "etwas" außerhalb des Geltungsbereichs, aber werfen Sie einen Blick auf diesen Link (für die Chrome DevTools): https://developers.google.com/web/tools/chrome-devtools/memory-problems/ (falls der Link nicht mehr verfügbar ist zu jeder Zeit, nur google "wie man Chrom-Entwickler-Tools Heap-Snapshot"

+1

verwenden Sie möchten diesen Link zusammen mit Ihrem Vorschlag # 1: http://medium.com/@benlesh/rxjs-dont-abbestellen -6753ed4fda87 – cartant

+0

Richtig, das ist eine nette Zusammenfassung der verschiedenen Muster, um Abonnements zu verwalten, aber alle wurden auch bereits in Fragen hier auf SO beantwortet - eine schnelle Suche sollte auch helfen. – olsn

Verwandte Themen