Я вижу некоторую «фатальную ошибку: параллельная итерация карты и запись карты» в некотором старом коде, написанном некоторое время назад.Я пытался диагностировать проблему, и я наткнулся на блок кода, похожий на ссылку ниже игровой площадки.
Мне кажется неправильным повторять возвращаемую карту (которая передается по ссылке) дажеесли он возвращается в функции с блокировкой.
Я искал объяснение того, почему это, похоже, не вызывает вышеуказанную ошибку.
Я понимаю, что сейчас есть RWMutex и карты синхронизации, но этот код был написан некоторое время назад, и я ищу объяснение функциональности, а не улучшений.
https://play.golang.org/p/_RY-QAyGE2W
Я бы предположил, что приведенный выше код выдаст «фатальную ошибку: параллельная итерация карты и запись карты», однако, похоже, что он работает без проблем.