Działanie garbage collector

Działanie garbage collector
T2
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1
0

Cześć, próbuje ogarnąć jak mniej więcej działa garbage collector, proszę o ewentualne poprawienie mnie, więc:

Dana aplikacja ma zerezerwowane X mb ram (czyli z tego co rozumiem, jest tam miejsce dla sterty?) garbage collector w tym momencie ma za zadanie śledzić, które obiekty mają referencje.Jeżeli dany obiekt posiada jakieś referencje, jest on wykonywany w pamięci ram, a jeżeli nie, jest usuwany do stery i czeka na ewentualne użycie. Gc ogółem dba o to, żeby te X mb pamięci ram dla danej aplikacji było cały czas dostępne? Czy jest możliwość wyłączenia gc? Pytam, bo jeżeli tak, to mamy murowany wyciek pamięci.

KamilAdam
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Silesia/Marki
  • Postów: 5555
2

Nie tyle można wyłączyć GC co wybrać GC który nigdy nie zwalnia pamięci. Nazywa się on Epsilon.

Michał Sikora
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Kraków
  • Postów: 834
0

GC na Androidzie jest różny w zależności od wersji Androida i rozwija się z wersji na wersję. Mechanizm działania i to kiedy się wywali może zależeć od konkretnej implementacji. Największy przeskok był między Androidem 4.4 i Androidem 5, gdzie zmienili maszynę wirtualną. Wyłączyć, z tego co wiem, to się nie da.

GC nie ma jakiejś dobrej dokumentacji. Najlepsze materiały do zapoznania się na szybko to prezentacje z konferencji.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.