[go: up one dir, main page]

tagptr 0.2.0

Strongly typed atomic and non-atomic tagged pointers
Documentation
  • Coverage
  • 100%
    8 out of 8 items documented1 out of 8 items with examples
  • Size
  • Source code size: 71.01 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 4.24 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Links
  • oliver-giersch/tagptr
    6 2 1
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • oliver-giersch

tagptr

Strongly typed marked pointers for storing bit patterns (tags) alongside raw pointers for concurrent programming with atomic operations.

Build Status Latest version Documentation License

Usage

Add the following to your Cargo.toml

[dependencies]
tagptr = "0.2.0"

Motivation

Most atomic CPU instructions only work with register-sized memory words (e.g., 32-bit or 64-bit). Many low-level concurrent algorithms thus need to store aditional data (tags) in the unused lower bits of pointers to referenced data objects. This crate provides thin and efficient abstractions for working with such pointers.

License

tagptr is distributed under the terms of both the MIT license and the Apache License (Version 2.0).

See LICENSE-APACHE and LICENSE-MIT for details.