pub struct WriteWorkRequest<'wr, 'data> { /* private fields */ }Expand description
A request to write data directly into remote memory.
This operation copies data from local memory (Source) to a specific address in remote memory (Destination). The remote CPU is not involved.
§Lifetimes
'wr— The lifetime of this struct. It must live until the request is posted to the Queue Pair.'data— The lifetime of the local data buffer. It is tied to theGatherElementand must remain valid until the operation completes.
Implementations§
Source§impl<'wr, 'data> WriteWorkRequest<'wr, 'data>
impl<'wr, 'data> WriteWorkRequest<'wr, 'data>
Sourcepub fn new(
gather_elements: &'wr [GatherElement<'data>],
remote_slice: RemoteMemoryRegion,
) -> Self
pub fn new( gather_elements: &'wr [GatherElement<'data>], remote_slice: RemoteMemoryRegion, ) -> Self
Creates a new RDMA Write request.
gather_elements— The local source data to write.remote_slice— The remote destination memory region.
Sourcepub fn with_immediate(self, imm_data: u32) -> Self
pub fn with_immediate(self, imm_data: u32) -> Self
Attaches 32 bits of immediate data to the write operation.
The immediate value is delivered to the remote peer via a completion notification.
The remote peer must have posted a ReceiveWorkRequest to capture this.
Trait Implementations§
Source§impl<'wr, 'data> Clone for WriteWorkRequest<'wr, 'data>
impl<'wr, 'data> Clone for WriteWorkRequest<'wr, 'data>
Source§fn clone(&self) -> WriteWorkRequest<'wr, 'data>
fn clone(&self) -> WriteWorkRequest<'wr, 'data>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<'wr, 'data> Debug for WriteWorkRequest<'wr, 'data>
impl<'wr, 'data> Debug for WriteWorkRequest<'wr, 'data>
Source§impl<'wr, 'data> From<PeerWriteWorkRequest<'wr, 'data>> for WriteWorkRequest<'wr, 'data>
impl<'wr, 'data> From<PeerWriteWorkRequest<'wr, 'data>> for WriteWorkRequest<'wr, 'data>
Source§fn from(value: PeerWriteWorkRequest<'wr, 'data>) -> Self
fn from(value: PeerWriteWorkRequest<'wr, 'data>) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl<'wr, 'data> Freeze for WriteWorkRequest<'wr, 'data>
impl<'wr, 'data> RefUnwindSafe for WriteWorkRequest<'wr, 'data>
impl<'wr, 'data> Send for WriteWorkRequest<'wr, 'data>
impl<'wr, 'data> Sync for WriteWorkRequest<'wr, 'data>
impl<'wr, 'data> Unpin for WriteWorkRequest<'wr, 'data>
impl<'wr, 'data> UnsafeUnpin for WriteWorkRequest<'wr, 'data>
impl<'wr, 'data> UnwindSafe for WriteWorkRequest<'wr, 'data>
Blanket Implementations§
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