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
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
Concurrency limiting goroutine pool
conc is a Go concurrency library and structured concurrency framework providing primitives for managing parallel tasks, mapping slices, and collecting results. It implements a system for spawning scoped tasks to ensure all child processes complete before their parent exits. The library includes a goroutine pool manager to limit active concurrent processes and a panic-safe task runner that catches panics in goroutines and propagates stack traces to the parent. It also provides a concurrent map-reduce tool for transforming data slices and processing streams in parallel while maintaining the ori
🔘 Minimalistic and High-performance goroutine worker pool written in Go
The main features of alitto/pond are: Task Scheduling and Queues, Concurrency Management, Concurrency Tools.
Open-source alternatives to alitto/pond include: panjf2000/ants — Ants is a goroutine pool library for Go that functions as a concurrent task orchestrator and resource consumption… sourcegraph/conc — conc is a Go concurrency library and structured concurrency framework providing primitives for managing parallel… gammazero/workerpool — Concurrency limiting goroutine pool. jeffail/tunny — Tunny is a worker pool library and concurrency manager for Go. It functions as a concurrent task scheduler that limits… arunsworld/nursery — Structured Concurrency in Go. ddelizia/channelify — Make functions return a channel for parallel processing via go routines.