17.15. Co wywołuje tę metodę? Graficzny analizator wywołań
Przypuśćmy, że tworzymy profil programu podobnego do tego, który pokazano w „17.12. Profilowanie aplikacji”, i moduł profilowania wskazuje, że źródłem problemu jest metoda Array#each
. Oznacza to, że program poświęca więcej czasu na przetwarzanie tablic w pętli niż na wykonywanie innych działań:
% cumulative self self total time seconds seconds calls ms/call ms/call name 12.19 2.74 2.74 4930 0.56 0.77 Array#each
To kieruje nas we właściwą stronę, ale co dalej? W większości programów jest bardzo wiele wywołań metody Array#each
. Aby można było zoptymalizować program, trzeba wiedzieć, które wiersze kodu są odpowiedzialne za większość wywołań metody Array#each
. Moduł profilowania języka Ruby ...
Get Ruby. Receptury now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.