2012-06-07 11 views
8

Jakie są implikacje VMDebug.startGC w pliku traceviewJakie są implikacje VMDebug.startGC w pliku traceview

documentation mówi:

/* 
* Fake method, inserted into dmtrace output when the garbage collector 
* runs. Not actually called. 
*/ 

private static void startGC() {} 

Ale w moim traceview widzę coś takiego to: traceview

Umieszczenie na brązowych kwadratach oznacza, że ​​są to metody VMDebug.startGC() z każdą metodą przyjmującą około 17 rzeczywistych ms. Zielone kwadraty to BitmapFactory.nativeDecodeAssetFunctions, każda zajmuje około 26 mililitrów rzeczywistych. W tym segmencie kodu ładuję mapy bitowe do importu jako tekstury OpenGL.

Co to jest funkcja startGC()?

Mam przekonanie oparte na nazwie funkcji i obserwowaniu, kiedy nazywa się to w jakiś sposób związane ze zbieraniem śmieci, ale dokumentacja jest dla mnie sprzeczna.

Odpowiedz

1

Użytkownik skopiował i wkleił opis dokumentu dla metody startClassPrep(), która znajduje się poniżej źródeł .

rzeczywistym opis jest:

/* 
* Fake method, inserted into dmtrace output when the garbage collector 
* runs. Not actually called. 
*/ 
private static void startGC() {} 

Wygląda, że ​​metoda jest używana tylko do celów debugowania podczas uruchamiania traceview.

+0

co to jest "wyjście dmtrace"? (szczególnie: czym jest "dmtrace")? – PoeHaH

+0

dmtrace to plik dziennika śledzenia, który zawiera stos wywołań i jest używany na przykład przez funkcję Traceview do wizualizacji wywołań metod w wątkach itp. – pawelzieba

Powiązane problemy