Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Go1.25で追加されたWaitGroup.Goの紹介
Search
ともやん
August 29, 2025
Programming
0
65
Go1.25で追加されたWaitGroup.Goの紹介
株式会社アドシード主催「水道橋BeerBash」で登壇しました!
そのときに使用したスライドです!
ともやん
August 29, 2025
Tweet
Share
Other Decks in Programming
See All in Programming
大体よく分かるscala.collection.immutable.HashMap ~ Compressed Hash-Array Mapped Prefix-tree (CHAMP) ~
matsu_chara
1
210
スタートアップを支える技術戦略と組織づくり
pospome
8
15k
[SF Ruby Conf 2025] Rails X
palkan
0
450
Socio-Technical Evolution: Growing an Architecture and Its Organization for Fast Flow
cer
PRO
0
270
React Native New Architecture 移行実践報告
taminif
1
130
令和最新版Android Studioで化石デバイス向けアプリを作る
arkw
0
260
ゲームの物理 剛体編
fadis
0
190
ハイパーメディア駆動アプリケーションとIslandアーキテクチャ: htmxによるWebアプリケーション開発と動的UIの局所的適用
nowaki28
0
350
AWS CDKの推しポイントN選
akihisaikeda
1
240
TypeScript 5.9 で使えるようになった import defer でパフォーマンス最適化を実現する
bicstone
1
1.1k
著者と進める!『AIと個人開発したくなったらまずCursorで要件定義だ!』
yasunacoffee
0
120
非同期処理の迷宮を抜ける: 初学者がつまづく構造的な原因
pd1xx
1
620
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
Why You Should Never Use an ORM
jnunemaker
PRO
60
9.6k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.3k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
The Cult of Friendly URLs
andyhume
79
6.7k
A Tale of Four Properties
chriscoyier
162
23k
How to Ace a Technical Interview
jacobian
280
24k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
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 についての記事を書いています
最近ちょっと頑張って書いています
ご清聴ありがとうございました!