Без синхронизации две горутины могут одновременно читать и писать одну переменную, и это data race. Результат непредсказуем — ты можешь увидеть частично записанное значение или вообще устаревшее. Mutex, каналы или atomic гарантируют что операции упорядочены и данные консистентны. Go даже имеет race detector (-race), который ловит такие баги при тестировании.
Зачем нужна синхронизация при доступе к shared data?
Middle
279 просмотровAFK Offer AI
Как реализовать stack на слайсе?