Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Go1.25で追加されたWaitGroup.Goの紹介
Search
ともやん
August 29, 2025
Programming
0
43
Go1.25で追加されたWaitGroup.Goの紹介
株式会社アドシード主催「水道橋BeerBash」で登壇しました!
そのときに使用したスライドです!
ともやん
August 29, 2025
Tweet
Share
Other Decks in Programming
See All in Programming
AI OCR API on Lambdaを Datadogで可視化してみた
nealle
0
230
tool ディレクティブを導入してみた感想
sgash708
1
160
OSS開発者という働き方
andpad
5
1.7k
250830 IaCの選定~AWS SAMのLambdaをECSに乗り換えたときの備忘録~
east_takumi
0
370
オープンセミナー2025@広島「君はどこで動かすか?」アンケート結果
satoshi256kbyte
0
240
Langfuseと歩む生成AI活用推進
licux
3
320
Oracle Database Technology Night 92 Database Connection control FAN-AC
oracle4engineer
PRO
1
380
レガシープロジェクトで最大限AIの恩恵を受けられるようClaude Codeを利用する
tk1351
4
1.6k
複雑なドメインに挑む.pdf
yukisakai1225
5
960
Laravel Boost 超入門
fire_arlo
2
190
Updates on MLS on Ruby (and maybe more)
sylph01
1
180
KessokuでDIでもgoroutineを活用する / Go Connect #6
mazrean
0
140
Featured
See All Featured
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
111
20k
A better future with KSS
kneath
239
17k
Into the Great Unknown - MozCon
thekraken
40
2k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Scaling GitHub
holman
463
140k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
Code Review Best Practice
trishagee
70
19k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
910
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
4 Signs Your Business is Dying
shpigford
184
22k
Transcript
Go 1.25 で追加された WaitGroup.Go の紹介 2025.08.29 株式会社アドシード 平野智也
名前 平野智也(ひらの ともや) 所属 株式会社アドシード(2023 年11 月〜) バックエンドがメイン Go ・PHP ・Node.js
etc... 今年6 月からテックブログ運営に参画 趣味 ジム・サウナ・読書・映画鑑賞 etc...
目次 Go 1.25 Release goroutine とは Go 1.24 までのgoroutine Go
1.25 からのgoroutine WaitGroup.Go() 導入のメリット まとめ
Go 1.25 Release Go 1.25 Release 2025 年08 月12 日にリリース
Go は半年に1 回マイナーバージョンがリリースされる ライブラリ・ランタイム・ツールチェーンの追加、変更 今回の注目 testing/synctest パッケージの追加 encoding/json/v2 パッケージの追加 sync パッケージにWaitGroup.Go メソッド実装
今回はGo 1.25 で追加された sync パッケージの WaitGroup.Go メソッドを紹介! Go 1.25 Release
goroutine とは Go ランタイムで管理される軽量スレッド 並行処理を実現するための仕組み 並行:複数のタスクが同時進行しているように見せる 並列:複数のタスクを物理的に同時に実行する 「go 」というキーワードを関数の前につけることで起動 I/O
が絡むケースで効果を発揮する
Go 1.24 までのgoroutine
sync.WaitGroup 複数のgoroutine の終了を待つ ための仕組み Add メソッド Goroutine カウンタを増やす Done メソッド
Goroutine カウンタを減らす Wait メソッド カウンタが0 になるまで待つ Go 1.24 までのgoroutine
Go 1.24 までのgoroutine
Go 1.25 からのgoroutine
sync.WaitGroup 複数のgoroutine の終了を待つ ための仕組み Go メソッド 内部でAdd メソッドと Done
メソッドを呼ぶ Wait() カウンタが0 になるまで待つ Go 1.25 からのgoroutine
Go 1.25 からのgoroutine
WaitGroup.Go() 導入のメリット Go 1.24 まで Add() やDone() の記述漏れのリスク 思わぬ挙動となってしまう Go
1.25 から Go() では内部でAdd() やDone() を呼び出している 簡潔かつ安全に想定した挙動を得られる
まとめ goroutine とは Go ランタイムで管理される軽量スレッド 並行処理を実現するための仕組み Go 1.25 からのgoroutine WaitGroup.Go()
を使う 内部でAdd() とDone() を呼び出している 簡潔かつ安全に想定した挙動を得られる
出典 Go Packages https://pkg.go.dev/sync#WaitGroup.Go Go 1.25 Release Notes https://tip.golang.org/doc/go1.25#syncpkgsync Future
Tech Blog https://future-architect.github.io/articles/20250801a/ RitoLabo https://www.ritolab.com/posts/323
宣伝 アドシードでは一緒に働く仲間を募集してます! 新しい技術・プロジェクトに挑戦できる環境です 困った時にはすぐに相談できる、心強い仲間もいます まずはカジュアルにお話ししませんか? 詳しくはこちら!
宣伝 アドシードではテックブログをやってます! AdseedTechBlog という名前です 毎週金曜日に更新予定です ビアバッシュの様子も随時載せていく予定です 個人でZenn やってます! Go についての記事を書いています
最近ちょっと頑張って書いています
ご清聴ありがとうございました!