Что произойдёт при конкурентном чтении и записи в map?

Middle
185 просмотров
AFK Offer AI

Panic: "concurrent map read and map write" или "concurrent map writes". Go runtime детектирует concurrent access к map и крашит программу намеренно — это лучше чем silent data corruption. Фиксы: sync.RWMutex вокруг map, sync.Map, или channel для сериализации доступа. Race detector (-race) ловит это в тестах.

Следующий вопрос

Что не так: type Counter struct { n int }; func (c Counter) Inc() { c.n++ }?