tag | e05d857c1523a12a11b8c9f77443108a08236b50 | |
---|---|---|
tagger | The Android Open Source Project <initial-contribution@android.com> | Tue May 16 21:53:00 2023 -0700 |
object | 6e3491b326cf5460927d7f880b23703163c38bbc |
Platform Tools Release 34.0.3 (9979309)
commit | 6e3491b326cf5460927d7f880b23703163c38bbc | [log] [tgz] |
---|---|---|
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | Thu Apr 20 16:04:56 2023 +0000 |
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | Thu Apr 20 16:04:56 2023 +0000 |
tree | 48aba01595a04f5ec8f9a35ddd61a7522da480e3 | |
parent | 052f06c4215707797ece21d5bfd38d25ddac125c [diff] | |
parent | 0acd1709fd933e9e3f0d78a2faf0fedb0008aaf5 [diff] |
Snap for 9979206 from 0acd1709fd933e9e3f0d78a2faf0fedb0008aaf5 to sdk-release Change-Id: I3a94c1217ff68b9a5c2a7f6ccbd9545fc73ca2e2
Atomic<T>
for RustA Rust library which provides a generic Atomic<T>
type for all T: Copy
types, unlike the standard library which only provides a few fixed atomic types (AtomicBool
, AtomicIsize
, AtomicUsize
, AtomicPtr
).
This library will use native atomic instructions if possible, and will otherwise fall back to a lock-based mechanism. You can use the Atomic::<T>::is_lock_free()
function to check whether native atomic operations are supported for a given type. Note that a type must have a power-of-2 size and alignment in order to be used by native atomic instructions.
This crate uses #![no_std]
and only depends on libcore.
Add this to your Cargo.toml
:
[dependencies] atomic = "0.5"
and this to your crate root:
extern crate atomic;
Licensed under either of
at your option.
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.