Closure — это функция, которая захватывает переменные из окружающего скоупа. Причём захватывает по ссылке, а не по значению. Это значит, что если переменная изменится после создания замыкания — замыкание увидит новое значение. Классическая ловушка: цикл for i := range items, а внутри горутина с i — все горутины увидят последнее значение i. Решение — передать i как аргумент в замыкание или создать локальную копию.
Что такое closure и как оно захватывает переменные?
Middle
935 просмотровAFK Offer AI
Что такое connection pool в Go?