pub enum Access {
Read,
Write,
ReadWrite,
}Expand description
Access kind for a single block use. Drives the cross-stream
dependency edges the resource queues during
DeviceMemoryResource::prepare_block_use and the events it
records during DeviceMemoryResource::finish_block_use.
Access::Read— the work consumes the block’s bytes. Must wait on any prior write on a different stream. The resulting event advances that stream’s read frontier so future writers (and the eventual deallocate) can wait on it.Access::Write— the work overwrites the block’s bytes unconditionally. Must wait on the block’s prior write AND all outstanding reads on different streams. The resulting event advances that stream’s write frontier. Other streams’ concurrent uses remain visible until their completion is independently ordered.Access::ReadWrite— both. Same wait set asWrite, and the resulting event likewise advances its write frontier.
Variants§
Implementations§
Trait Implementations§
impl Copy for Access
impl Eq for Access
impl StructuralPartialEq for Access
Auto Trait Implementations§
impl Freeze for Access
impl RefUnwindSafe for Access
impl Send for Access
impl Sync for Access
impl Unpin for Access
impl UnsafeUnpin for Access
impl UnwindSafe for Access
Blanket Implementations§
impl<T> Allocation for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more