Additional Go concurrency primitives

Clone this repo:


  1. fd80eb9 semaphore: add worker-pool example by Bryan C. Mills · 4 months ago master
  2. 8e0aa68 README: switch to Markdown, add better links by Kevin Burke · 7 months ago
  3. f52d181 semaphore: make test time independent of GOMAXPROCS by Jonathan Amsterdam · 9 months ago
  4. 57af736 syncmap: release during (*RWMutexMap).Range callbacks by Bryan C. Mills · 10 months ago
  5. 305c7b3 syncmap: backport CL 42095 by Bryan C. Mills · 10 months ago

Go Sync

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


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

Report Issues / Send Patches

This repository uses Gerrit for code changes. To learn how to submit changes to this repository, see

The main issue tracker for the sync repository is located at Prefix your issue with “x/sync:” in the subject line, so it is easy to find.