NativeScript / NativeScript/napi-android

Debug and fix memory leaks

Offen
#20 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
C++
Sterne
33
Forks
3
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

New runtimes work differently and are not well tested yet for memory leaks. We are working on fixing issues anything we find.

  • When a java object is finally freed in Java, we notify the JS side to free the JS counterpart. At this time, the Java object is held weakly in Java too using a WeakReference. While the Java object is weakly held, the WeakReference is strongly kept in a HashMap never getting removed. In this PR we release the WeakReferences too on GC event ensuring that all memory is reclaimed. Fixed in https://github.com/NativeScript/napi-android/commit/5e48302fc0eeab63eae6935e864de36d25100e2c
  • Investigate Java Interface Implementation leaking on JS Side

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Im Issue wird keine Datei und kein Test genannt. Beginne mit der Prüfung des referenzierten Commits und untersuche dann das verbleibende Java Interface Implementation-Leak auf der JS-Seite; fertig bedeutet, dass das aufgeführte Leak behoben und der Speicher zurückgewonnen wurde.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
android, cpp, java, javascript
Bereich
mobile-dev, performance
Issue-Typ
Bug
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.