Go & IT
1.3K subscribers
18 photos
54 links
Мы любим программирование, особенно если это Go ;)

Наш ламповый чатик: @go_stepik
Сотрудничество и реклама: @semyon_dev
Download Telegram
В августе планируется релиз go1.25, начинаем разбираться что нового в этом релизе 🖼️

📦 Спустя 13 лет разработчики решили добавить "Add+Done" wrapper. Теперь не нужно вручную писать Add(1) перед запуском горутины и defer Done() внутри неё. Всё это делает Go() автоматически. Сравним:
Go 1.24:
var wg sync.WaitGroup

wg.Add(1)
go func() {
defer wg.Done()
fmt.Println("go 1")
}()

wg.Add(1)
go func() {
defer wg.Done()
fmt.Println("go 2")
}()

wg.Wait()
fmt.Println("done")

Go 1.25:
var wg sync.WaitGroup

wg.Go(func() {
fmt.Println("go 1")
})

wg.Go(func() {
fmt.Println("go 2")
})

wg.Wait()
fmt.Println("done")

Простое изменение, которое делает код чище и надёжнее.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18😁6🤔3🔥21