A Go-style CSP concurrency runtime for C: threadpools, stackful coroutines, channels, select, async I/O, and garbage collection in one coherent API.
libgoc is a C library providing Go-inspired concurrency tools like lightweight tasks, message channels, selection over operations, timeouts, thread pools, and automatic garbage collection.
How It Works
You hear about libgoc while searching for an easy way to make your C program handle multiple tasks at once, like friends passing messages back and forth without chaos.
You follow simple steps to prepare libgoc on your computer, grabbing the needed helpers so everything works smoothly on Windows, Mac, or Linux.
You include libgoc in your C program and start writing your tasks, creating channels for them to share information safely.
You set up a couple of tasks, like ping and pong, that send numbers back and forth over a channel until they finish.
You launch your program and see the tasks working together perfectly, printing results without any freezes or memory worries.
You add more tasks, timeouts, or separate groups of workers, and everything scales up effortlessly.
Your C program now juggles many jobs at once reliably, saving you headaches and letting you focus on what it does.
Star Growth
Repurpose is a Pro feature
Generate ready-to-use prompts for X threads, LinkedIn posts, blog posts, YouTube scripts, and more -- with full repo context baked in.
Unlock RepurposeSimilar repos coming soon.