Shadow atomic.Value from sync/atomic (#19)

2 files changed
tree: 6b378541dcfa1cae8c0b7bf8504320f3690f3d1a
  1. .github/
  2. .gitignore
  3. .travis.yml
  4. LICENSE.txt
  5. Makefile
  6. README.md
  7. atomic.go
  8. atomic_test.go
  9. example_test.go
  10. glide.lock
  11. glide.yaml
  12. scripts/
  13. stress_test.go
  14. string.go
  15. string_test.go
README.md

atomic GoDoc Build Status Coverage Status

Simple wrappers for primitive types to enforce atomic access.

Installation

go get -u go.uber.org/atomic

Usage

The standard library‘s sync/atomic is powerful, but it’s easy to forget which variables must be accessed atomically. go.uber.org/atomic preserves all the functionality of the standard library, but wraps the primitive types to provide a safer, more convenient API.

var atom atomic.Uint32
atom.Store(42)
atom.Sub(2)
atom.CAS(40, 11)

See the documentation for a complete API specification.

Development Status

Stable.