Feature gate: #![feature(atomic_volatile)]
This is a tracking issue for atomic volatile operations
Public API
// Not actually a generic impl, but you get the idea.
impl Atomic<T> {
/// Convenient method to create a raw pointer to `Atomic<T>` suitable for volatile accesses.
pub fn from_ptr_raw(ptr: *mut T) -> *const Self;
/// Performs a volatile atomic load of the given `order`.
pub unsafe fn load_volatile(self: *const Self, order: Ordering) -> T;
/// Performs a volatile atomic store of the given `order`.
pub unsafe fn store_volatile(self: *const Self, val: T, order: Ordering);
}
Steps / History
(Remember to update the S-tracking-* label when checking boxes.)
Unresolved Questions
Feature gate:
#![feature(atomic_volatile)]This is a tracking issue for atomic volatile operations
Atomic*types libs-team#801Public API
Steps / History
(Remember to update the
S-tracking-*label when checking boxes.)Atomic*types libs-team#801volatile_loadtoload_volatileto be consistent with the existingread_volatilethat also makesvolatilea suffix rather than a prefix (and same for stores)Unresolved Questions
Footnotes
https://std-dev-guide.rust-lang.org/feature-lifecycle/stabilization.html ↩