[О блоге]
[наверх]
[пред]
[2023-07-24 21:36:24+03:00]
[7c186e7a8451ab256d92a578157714b5eeb11b10]
Темы: [go]
Ловушка в Go циклах
https://flak.tedunangst.com/post/dodging-the-go-loop-trap
Прекрасно знаю ведь про переменные в циклах, всё ясно и понятно, но на
днях потратил несколько часов на поиск ошибки которая была именно такой
как описано в статье. Не уследил по неаккуратности.
[оставить комментарий]
- комментарий 0:
From: kmeaw
Date: 2023-07-25 20:09:11Z
Примерно месяц назад починили:
For Go 1.22, the Go team is considering changing the semantics of for
loop variables to prevent unintended sharing in per-iteration closures
and goroutines. Go 1.21 contains a preliminary implementation of the
change, enabled by setting GOEXPERIMENT=loopvar when building your
program.
- комментарий 1:
From: Sergey Matveev
Date: 2023-07-26 06:04:33Z
*** kmeaw [2023-07-25 21:04]:
>Примерно месяц назад починили: GOEXPERIMENT=loopvar
Кстати, да! Упоминание про loopvar я точно где-то встречал. Ну это не то
чтобы было "сломано", но на грабли люди тут наступают, бывает.