https://github.com/mehcode/atomic-array-rs
Defines several array types in which elements may be updated atomically. Intended to provide atomic array types similar to those found in java.util.concurrent.atomic in Java.
https://github.com/mehcode/atomic-array-rs
concurrent-data-structure rust
Last synced: 8 months ago
JSON representation
Defines several array types in which elements may be updated atomically. Intended to provide atomic array types similar to those found in java.util.concurrent.atomic in Java.
- Host: GitHub
- URL: https://github.com/mehcode/atomic-array-rs
- Owner: mehcode
- License: apache-2.0
- Created: 2018-06-01T05:43:16.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2018-06-08T23:24:15.000Z (over 7 years ago)
- Last Synced: 2025-06-19T04:07:05.391Z (8 months ago)
- Topics: concurrent-data-structure, rust
- Language: Rust
- Size: 19.5 KB
- Stars: 8
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE-APACHE
Awesome Lists containing this project
README
# atomic-array

[](https://crates.io/crates/atomic-array)
[](https://docs.rs/atomic-array)
> Defines several array types in which elements may be updated atomically. Intended to provide atomic array types similar to those found in `java.util.concurrent.atomic` in Java.
Provides the following types:
* `AtomicOptionRefArray` – Corresponds to [`AtomicReferenceArray`](https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/atomic/AtomicReferenceArray.html).
* `AtomicRefArray` – `AtomicOptionRefArray` with enforced default values to remove the optional property of the elements.
* `AtomicBoolArray`
* `AtomicUsizeArray`, `AtomicIsizeArray`
* `AtomicI8` ... `AtomicI64Array` (requires a `nightly` compiler and `integer_atomics` feature)
* `AtomicU8` ... `AtomicU64Array` (requires a `nightly` compiler and `integer_atomics` feature)
## Usage
```toml
[dependencies]
atomic-array = "0.3"
```
## License
Licensed under either of
* Apache License, Version 2.0
([LICENSE-APACHE](LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0)
* MIT license
([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT)
at your option.
## Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in the work by you, as defined in the Apache-2.0 license, shall be
dual licensed as above, without any additional terms or conditions.