Mam proces działający na OS X, który ma pewne problemy, a „przykładowe” narzędzie na Macu wydaje się najlepszym sposobem debugowania problemu. Niestety, jedyna dokumentacja, jaką mogę dla niego znaleźć, to strona man, która nie mówi nic o tym, jak interpretować wyniki.
Czy są jakieś dobre miejsca, które dokumentują wyjście i jak je interpretować? Jeśli nie, czy ktoś może dać mi bardzo podstawowy samouczek?
Odpowiedzi:
Właśnie sprawdziłem stronę Man próba i wygląda na to, że jest to na wpół przyzwoity próbnik połączeń. Twierdzi, że jego wyjście jest drzewem wywoławczym, więc nie powinno być zbyt trudne do zrozumienia.
Mówię pół przyzwoicie, ponieważ zbieranie próbek stosu połączeń jest dobrą rzeczą. Krytyka dotyczy:
Nie mówi, czy zbiera próbki, gdy proces jest w wywołaniu systemowym, jak oczekiwanie na I / O. Ważne jest, aby to zrobić, chyba że chcesz być ślepy na niepotrzebne I / O.
To zależy od fikcji liczy się dokładność pomiaru czasu i nie chcesz przegapić żadnych funkcji, więc próbki muszą być bardzo częste . To fikcja, ponieważ celem jest odnaleźć duże rzeczy, nie do zmierzyć małe rzeczy. Każda funkcja, która się nie pojawia, z pewnością nie kosztuje tyle, ile trzeba.
Konsekwencją tej fikcji jest zbyt wiele próbek do obejrzenia, więc musi spróbować znaleźć sposób na ich podsumowanie, więc wybiera drzewo wywoławcze. Faktem jest, że jeśli ci wolno zbadać niewielką liczbę próbek (jak 10 lub 20) zobaczysz dokładnie powód (y) powolności. Podsumowanie stanowi problem. Rozmazuje się i ukrywa informacje.
Tak więc, długi i krótki jest, wydaje się być dobrym narzędziem do zbierania próbek stosu połączeń. Jeśli możesz dowiedzieć się, jak rzeczywiście zobaczyć ich wybór, powie Ci, na czym polega problem.
źródło