README

Go Sync

This repository provides Go concurrency primitives in addition to the ones provided by the language and "sync" and "sync/atomic" packages.

Download/Install

The easiest way to install is to run go get -u golang.org/x/sync. You can also manually git clone the repository to $GOPATH/src/golang.org/x/sync.

Report Issues / Send Patches

This repository uses Gerrit for code changes. To learn how to submit changes to this repository, see https://golang.org/doc/contribute.html.

The main issue tracker for the sync repository is located at https://github.com/golang/go/issues. Prefix your issue with "x/sync:" in the subject line, so it is easy to find.

Directories

Path Synopsis
Package errgroup provides synchronization, error propagation, and Context cancelation for groups of goroutines working on subtasks of a common task.
Package errgroup provides synchronization, error propagation, and Context cancelation for groups of goroutines working on subtasks of a common task.
Package semaphore provides a weighted semaphore implementation.
Package semaphore provides a weighted semaphore implementation.
Package singleflight provides a duplicate function call suppression mechanism.
Package singleflight provides a duplicate function call suppression mechanism.
Package syncmap provides a concurrent map implementation.
Package syncmap provides a concurrent map implementation.