Skip to content
This repository


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master

Fetching latest commit…


Cannot retrieve the latest commit at this time

Octocat-spinner-32 Makefile
Octocat-spinner-32 README
Octocat-spinner-32 uniq.go
Octocat-spinner-32 uniq_test.go
Implementation and benchmarks of the two methods of generating unique numbers
described in this blog post:

The output of 'gomake bench':

uniq.BenchmarkMutex    10000000  173 ns/op
uniq.BenchmarkChannel  10000000  224 ns/op

The channel-based approach takes 1.29x the time of the mutex-based approach.

Depending on the specific application, and your opinion on the aesthetics
of the two approaches, this can be an acceptable tradeoff (it is, IMO).

Andrew Gerrand <>
Something went wrong with that request. Please try again.