🟡 Средний · 2 очк. Профилирование и оптимизация
Как корректно собрать CPU-профиль работающего Go-приложения?
A Через runtime/pprof: StartCPUProfile в начале, StopCPUProfile в конце
B Через go test -cpuprofile; приложение должно быть тестом
C Только через сторонние профайлеры вроде perf
D CPU-профиль покажет только количество горутин
Объяснение вопроса

Стандартный способ - пакет runtime/pprof:

f, _ := os.Create("cpu.prof")
defer f.Close()
pprof.StartCPUProfile(f)
defer pprof.StopCPUProfile()

Для сервиса часто подключают net/http/pprof и скачивают профиль по HTTP: GET /debug/pprof/profile?seconds=30.

Анализ: go tool pprof cpu.prof. Команда top показывает функции по времени (flat и cum).

🧠Квиз 🏆Лидеры 🎯Собесед. 📖Вопросы 📚База зн.