Post Thumbnail

Статья разбирает пять встроенных профилировщиков в Go (CPU, heap, block, mutex и goroutine), показывая, что все они собирают данные в единый pprof-формат, но отличаются способом записи. CPU-профайлер работает асинхронно через сигналы ОС и кольцевой буфер. Heap, block и mutex накапливают данные на месте в хеш-таблице бакетов прямо в рантайме. А goroutine-профайлер делает мгновенный снимок всех горутин только по запросу, кооперируясь с планировщиком для минимальных остановок мира

Похожее

Post Thumbnail

Рефлексия

Статья о том, как устроен пакет reflect в Go. Он, кстати, не вычисляет как-то хи...