Флаг -race включает детектор гонок — инструмент, встроенный в Go runtime. Он инструментирует код при компиляции и отслеживает все обращения к памяти из разных горутин. Если две горутины одновременно обращаются к одной переменной и хотя бы одна пишет — race detector об этом сообщит с полным стеком вызовов. Замедляет программу в 2-10 раз и увеличивает потребление памяти, поэтому используется только в тестах. Обязательно запускай на CI — data race баги сложно ловить иначе.
Как работает go test -race?
Middle
1.1k просмотровAFK Offer AI
Как дебажить Go приложение?