Uploaded August 2024 | Updated September 2026, 1 week ago
Learn how to write concurrent programs in Go using goroutines, wait groups, and channels. Explore how the semaphore pattern can prevent unbounded concurrency.
Find the code at github.com/sudomateo/sudomateo.
00:00 Introduction
00:24 Concurrency vs. Parallelism
02:52 Overview of the Code
05:20 Serial Execution
06:46 Concurrent Execution with WaitGroups
13:47 Concurrent Execution with Channels
17:12 What is Unbounded Concurrency?
18:11 Concurrent Execution with Semaphores
22:13 Tuning Concurrency for I/O or CPU Workloads
26:02 Final Thoughts
Personal Website: https://matthewsanabria.dev
GitHub: github.com/sudomateo
LinkedIn: linkedin.com/in/sudomateo
Twitter: twitter.com/sudomateo
Mastodon: https://mastodon.online/@sudomateo
YouTube: youtube.com/@sudomateo
Learn how to write concurrent programs in Go using goroutines, wait groups, and channels. Explore how the semaphore pattern can prevent unbounded concurrency.
Find the code at github.com/sudomateo/sudomateo.
00:00 Introduction
00:24 Concurrency vs. Parallelism
02:52 Overview of the Code
05:20 Serial Execution
06:46 Concurrent Execution with WaitGroups
13:47 Concurrent Execution with Channels
17:12 What is Unbounded Concurrency?
18:11 Concurrent Execution with Semaphores
22:13 Tuning Concurrency for I/O or CPU Workloads
26:02 Final Thoughts
Personal Website: https://matthewsanabria.dev
GitHub: github.com/sudomateo
LinkedIn: linkedin.com/in/sudomateo
Twitter: twitter.com/sudomateo
Mastodon: https://mastodon.online/@sudomateo
YouTube: youtube.com/@sudomateo


