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
89
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Go1.25で追加されたWaitGroup.Goの紹介
株式会社アドシード主催「水道橋BeerBash」で登壇しました!
そのときに使用したスライドです!
ともやん
August 29, 2025
Other Decks in Programming
See All in Programming
AIに既存システムを理解させる技術 ~レガシーを見捨てないハーネスエンジニアリング入門~
ochtum
0
110
【QA Test Talk Vol.8】AI-DLC による Whole Team Approach の加速
pkshadeck
PRO
0
220
変わらないものが、変わるものを決める — 意図駆動開発 × イベントソーシング × イミュータブル | What Doesn't Change Decides What Can — IDD × Event Sourcing × Immutability
tomohisa
0
1.8k
全PRの83%がAIレビューだけでマージできるようになった開発組織はその後どうなったか
athug
1
1.9k
仕様駆動開発へのトライを機に チームに適合する手法を模索し続けている話
freee
PRO
0
590
Pythonの実行はどこまで賢くなったのか? CPythonとPyPyから見る最適化のしくみ
curekoshimizu
3
1.4k
Hono + Inertia + React で LP を構築した話
oukayuka
2
130
ソフトウェアラスタライザ
fadis
1
380
テーブルをDELETEした
yuzneri
0
150
ここ半年くらいでAIに作らせたR用ツール
eitsupi
0
400
Go を使い始めて 2 ヶ月の学び / My first two months with Go
contour_gara
0
360
Dockerfile CMD for Node.js
grazie1999
0
110
Featured
See All Featured
Speed Design
sergeychernyshev
33
2k
Ruling the World: When Life Gets Gamed
codingconduct
0
310
Code Reviewing Like a Champion
maltzj
528
40k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.9k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.8k
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
Skip the Path - Find Your Career Trail
mkilby
1
190
The #1 spot is gone: here's how to win anyway
tamaranovitovic
3
1.1k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
660
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Faster Mobile Websites
deanohume
310
32k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
220
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 についての記事を書いています
最近ちょっと頑張って書いています
ご清聴ありがとうございました!