pool

package
v0.11.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 10, 2019 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Overview

Package pool contains a simple threadpool implementation that accepts work in the form of `func() error` function. The intent is for it to support similar workloads to errgroup, but with a maximum number of concurrent worker threads.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Interface

type Interface interface {
	// Go queues a single unit of work for execution on this pool. All calls
	// to Go must be finished before Wait is called.
	Go(func() error)

	// Wait blocks until all work is complete, returning the first
	// error returned by any of the work.
	Wait() error
}

Interface defines an errgroup-compatible interface for interacting with our threadpool.

func New

func New(workers int) Interface

New creates a fresh worker pool with the specified size.

func NewWithCapacity

func NewWithCapacity(workers, capacity int) Interface

NewWithCapacity creates a fresh worker pool with the specified size.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL