pub struct NDArraySender { /* private fields */ }Expand description
Sender held by upstream. Fully async, reliable (no drops).
§blocking_callbacks semantics
Both modes use reliable async enqueue (send().await). The difference is
how long the caller waits:
blocking_callbacks=0: waits until the message is in the downstream queue (enqueue guaranteed, processing NOT awaited).blocking_callbacks=1: waits until the downstream plugin has finished processing the array (enqueue + completion awaited).
Neither mode drops arrays due to back-pressure — the caller yields instead.
Implementations§
Source§impl NDArraySender
impl NDArraySender
Sourcepub async fn publish(&self, array: Arc<NDArray>)
pub async fn publish(&self, array: Arc<NDArray>)
Publish an array downstream (async, reliable).
enable_callbacks=0: returns immediately, array not sent.blocking_callbacks=0: awaits queue admission only.blocking_callbacks=1: awaits queue admission + downstream processing completion.
Sourcepub fn is_enabled(&self) -> bool
pub fn is_enabled(&self) -> bool
Whether this sender’s plugin has callbacks enabled.
Sourcepub fn is_blocking(&self) -> bool
pub fn is_blocking(&self) -> bool
Whether this sender’s plugin is in blocking mode.
pub fn port_name(&self) -> &str
Sourcepub fn set_queued_counter(&mut self, counter: Arc<QueuedArrayCounter>)
pub fn set_queued_counter(&mut self, counter: Arc<QueuedArrayCounter>)
Set the queued-array counter for tracking in-flight arrays.
Trait Implementations§
Source§impl Clone for NDArraySender
impl Clone for NDArraySender
Source§fn clone(&self) -> NDArraySender
fn clone(&self) -> NDArraySender
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 moreAuto Trait Implementations§
impl Freeze for NDArraySender
impl !RefUnwindSafe for NDArraySender
impl Send for NDArraySender
impl Sync for NDArraySender
impl Unpin for NDArraySender
impl UnsafeUnpin for NDArraySender
impl !UnwindSafe for NDArraySender
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