30 open-source projects similar to x-mod/routine, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Routine alternative.
Synchronization and asynchronous computation package for Go
CyclicBarrier golang implementation
Solution for accumulation of events and their subsequent processing.
A sync.WaitGroup with error handling and concurrency control
Run functions in parallel :comet:
🔘 Minimalistic and High-performance goroutine worker pool written in Go
🐝 A Highly Performant and easy to use goroutine pool for Go
Zero-config, auto-scaling worker pool for Go with priority-aware scheduling, adaptive resource management, and per-task retry logic.
Ants is a goroutine pool library for Go that functions as a concurrent task orchestrator and resource consumption limiter. Its primary purpose is to manage and reuse a pool of goroutines to limit concurrency and reduce the memory allocation overhead associated with frequent thread creation. The system provides a runtime worker manager capable of adjusting pool capacity dynamically to respond to fluctuating workloads. To maintain stability, it includes panic recovery mechanisms that intercept runtime failures within worker threads to prevent a single failing task from crashing the entire appli
Hunch provides functions like: All, First, Retry, Waterfall etc., that makes asynchronous flow control more intuitive.
Concurrency limiting goroutine pool
:speedboat: a limited consumer goroutine or unlimited goroutine pool for easier goroutine handling and cancellation
Make functions return a channel for parallel processing via go routines.
Library to manage application lifetime in a Go microservice architecture
A pool that spins up a given number of processes in advance and attaches stdin and stdout when needed. Very similar to FastCGI but works for any command.
Go toolkit for clean, composable, channel-based concurrency
Unlimited job queue for go, using a pool of concurrent workers processing the job queue entries
A concurrent toolkit to help execute funcs concurrently in an efficient and safe way. It supports specifying the overall timeout to avoid blocking.
Hands is a process controller used to control the execution and return strategies of multiple goroutines.
Tunny is a worker pool library and concurrency manager for Go. It functions as a concurrent task scheduler that limits the number of parallel workers processing jobs to prevent system resource exhaustion. The project enables the maintenance of persistent state within individual worker routines to avoid repeated initialization costs. It also supports dynamic worker scaling, allowing the number of active background workers to be adjusted in real time without interrupting tasks in progress. The library provides mechanisms for task timeout enforcement and worker lifecycle management, including t
goworker is a Go-based background worker that runs 10 to 100,000* times faster than Ruby-based workers.
Simply way to control goroutines execution order based on dependencies
🚧 Flexible mechanism to make execution flow interruptible.
🚦 Semaphore pattern implementation with timeout of lock/unlock operations.
gpool - a generic context-aware resizable goroutines pool to bound concurrency based on semaphore.