atomic

Wrapper types for sync/atomic which enforce atomic access

  • 所有者: uber-go/atomic
  • 平台:
  • 许可证: MIT License
  • 分类:
  • 主题:
  • 喜欢:
    0
      比较:

Github星跟踪图

atomic GoDoc Build Status Coverage Status Go Report Card

Simple wrappers for primitive types to enforce atomic access.

Installation

$ go get -u go.uber.org/atomic@v1

Legacy Import Path

As of v1.5.0, the import path go.uber.org/atomic is the only supported way
of using this package. If you are using Go modules, this package will fail to
compile with the legacy import path path github.com/uber-go/atomic.

We recommend migrating your code to the new import path but if you're unable
to do so, or if your dependencies are still using the old import path, you
will have to add a replace directive to your go.mod file downgrading the
legacy import path to an older version.

replace github.com/uber-go/atomic => github.com/uber-go/atomic v1.4.0

You can do so automatically by running the following command.

$ go mod edit -replace github.com/uber-go/atomic=github.com/uber-go/atomic@v1.4.0

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.


Released under the MIT License.

主要指标

概览
名称与所有者uber-go/atomic
主编程语言Go
编程语言Makefile (语言数: 2)
平台
许可证MIT License
所有者活动
创建于2016-05-24 00:12:01
推送于2025-04-14 21:33:18
最后一次提交2025-01-07 21:28:08
发布数15
最新版本名称v1.11.0 (发布于 2023-05-03 14:21:18)
第一版名称v1.0.0 (发布于 2016-07-18 13:41:41)
用户参与
星数1.4k
关注者数24
派生数109
提交数148
已启用问题?
问题数38
打开的问题数8
拉请求数121
打开的拉请求数7
关闭的拉请求数40
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?