Hands on exercises with real-life examples to study and practice Go concurrency patterns. Test-cases are provided to verify your answers.
Hands on exercises with real-life examples to study and practice Go concurrency patterns. Test-cases are provided to verify your answers.
Exercises for Golang's concurrency patterns.
The Go community has plenty resources to read about go's concurrency model and how to use it effectively. But who actually wants to read all this!? This repo tries to teach concurrency patterns by following the 'learning by doing' approach.
main.go to solve the problem. Do not touch any of the other files.*_test.go file, you can test the correctness of your solution with go test@loong ;) )This workshop is set up for AI coding agents as well as humans:
AGENTS.md — how to coach a learner, which files are frozen, and how to run tests (AGENTS.md convention)llms.txt — curated index for crawlers and chat agents (llms.txt convention)exercises.json — machine-readable catalog of every challenge.agents/skills/ — on-demand skills (take-exercise, maintain-exercises)Each exercise directory also has its own AGENTS.md. Please do not paste full solutions into main.go unless the learner asks.
| # | Name of the Challenge + URL |
|---|---|
| 0 | Limit your Crawler |
| 1 | Producer-Consumer |
| 2 | Race Condition in Caching Cache |
| 3 | Limit Service Time for Free-tier Users |
| 4 | Graceful SIGINT Killing |
| 5 | Clean Inactive Sessions to Prevent Memory Overflow |
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
Version 2, December 2004
Copyleft from 2017 Long Hoang
Everyone is permitted to copy and distribute verbatim or modified
copies of this license document, and changing it is allowed as long
as the name is changed.
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. You just DO WHAT THE FUCK YOU WANT TO.
No open issues yet, or sync has not completed.