Korzystając z Android Memory Monitor, szczególnie z funkcji "Dump Java Heap", obecnie szukam przecieków pamięci w mojej aplikacji. Po lewej stronie widoku zrzutów systemu Android/HPROF znajduje się opcja otwierania "Zadania analizatora" i tam możesz powiedzieć urządzeniu "Wykryj nieszczelne działania" i "Znajdź zduplikowane ciągi". Zastanawia mnie ta druga opcja. Co robi i jak jest użyteczny? To musi być bardziej wyrafinowane niż pomaganie tym niezręcznym programistom wśród nas, którzy umieszczają ten sam napis dwa razy w swoim folderze zasobów. docs nie są tu zbyt pomocne (jeśli moje wyszukiwanie było wystarczająco dokładne), ponieważ tylko stwierdzają, że pomaga to w przypadkach, gdy program docelowy ma ciągi, które powtarzają wartości. Kiedy to się stanie?Dlaczego chciałbym znaleźć "Zduplikowane ciągi" za pomocą programu HPROF Viewer and Analyzer?
Odpowiedz
O ile mi wiadomo, po prostu wskazuje na powielone ciągi w pamięci. Jest to jednak przydatne nie tylko w przypadku wyszukiwania przypadków, w których ten sam ciąg został wprowadzony do więcej niż jednego zasobu. Na przykład, jako Strings are immutable w Javie, możesz łatwo skończyć z wieloma innymi instancjami łańcuchów, niż początkowo mogłoby się wydawać. Jeśli twoja aplikacja ma dużo ciągów znaków, ale nie używa StringBuilder, lub jeśli twoja aplikacja przetwarza ciąg tekstowy/tekstowy, dość łatwo może się skończyć niespodziewanie dużą ilością miejsca zajmowanego przez ciągi. Ale odwrotnie, często może to być względnie łatwa optymalizacja, aby uzyskać nieco więcej miejsca (gdy tylko zobaczysz, na czym polega problem). Można więc powiedzieć, że to zadanie polega raczej na "optymalizacji" pamięci, niż na znalezieniu wycieku.
- 1. Jak znaleźć zduplikowane nazwy za pomocą pand?
- 2. Pandy: związkowe zduplikowane ciągi
- 3. Zestaw programu Jasper Viewer
- 4. Jak znaleźć zduplikowane klasy wśród zależności za pomocą SBT
- 5. Znajdź zduplikowane ciągi w dużym pliku
- 6. "heapdump.xxx.phd". Nie nora HPROF sterty (java.io.IOException) nie kupie HPROF zrzucić
- 7. parsować migawkę pamięci plików indeksowych hprof programowo
- 8. Jak znaleźć orientację zdjęcia zrobionego za pomocą programu Intent MediaStore.ACTION_IMAGE_CAPTURE?
- 9. WPF: Jak programowo wyodrębnić pasek przewijania z programu Scroll Viewer?
- 10. Dlaczego chciałbym zainstalować SharePoint z TFS
- 11. Jak utworzyć raport w asp.net za pomocą Report Viewer
- 12. Znajdź zduplikowane ciągi na liście i uczyń je unikalnymi.
- 13. narzędzie Viewer for Global Assembly Cache (Viewer)
- 14. Uruchamianie programu PowerPoint Viewer z wiersza poleceń w systemie Windows
- 15. Aktualizowanie plików XML za pomocą programu PowerShell
- 16. Dlaczego są rejestrowane zduplikowane wiadomości
- 17. Eclipse Memory Analyzer, ale zawsze pokazuje Wystąpił błąd wewnętrzny?
- 18. Jak znaleźć zduplikowane nazwy w tabeli
- 19. Dlaczego NIE chciałbym używać odwrotności wszędzie?
- 20. Zmiana statusu programu Lync za pomocą skryptu
- 21. Jak znaleźć pochodną funkcji za pomocą c
- 22. Osadzanie programu PowerPoint Viewer w C# Win Form
- 23. Zmień sposób formatowania za pomocą programu Eclipse na długie ciągi znaków
- 24. Rejestrowanie programu RAPI za pomocą ActiveSync?
- 25. błąd podczas uruchamiania hprof-conv.exe
- 26. Jak usunąć zduplikowane atrybuty z kodu XML za pomocą C#
- 27. Jak usunąć zduplikowane elementy z listy za pomocą apache prędkość
- 28. Custom Analyzer elasticsearch-rails
- 29. Uwierzytelnianie za pomocą karty inteligentnej za pomocą programu ASP.NET
- 30. Konwersja czasu uniksowego za pomocą programu PowerShell