Struct nando_lib::nando_executor::NandoExecutor
source · pub struct NandoExecutor {
num_threads: u16,
input_channel_capacity: usize,
}Fields§
§num_threads: u16§input_channel_capacity: usizeImplementations§
source§impl NandoExecutor
impl NandoExecutor
pub fn new(config: ExecutorConfig, _object_tracker: Arc<ObjectTracker>) -> Self
pub fn init( &self, object_tracker: Arc<ObjectTracker> ) -> Vec<Producer<NandoActivation>>
pub fn get_nando_executor( config: Option<ExecutorConfig>, object_tracker: Option<Arc<ObjectTracker>> ) -> &'static NandoExecutor
sourcefn resolve_activation_args(
constraints: &mut HashMap<ObjectId, Constraint>,
mv_status: &mut Vec<(ObjectId, bool)>,
activation: &NandoActivation,
object_tracker: Arc<ObjectTracker>
) -> ResolutionResult
fn resolve_activation_args( constraints: &mut HashMap<ObjectId, Constraint>, mv_status: &mut Vec<(ObjectId, bool)>, activation: &NandoActivation, object_tracker: Arc<ObjectTracker> ) -> ResolutionResult
Attempts to resolve target activation args.
This method attempts to locally “resolve” the target activation’s object-related arguments
from [IPtr] instances into concrete objects or materialized read-only versions of the
target objects. If this is an effectful nanotransaction and any of its data dependencies
have been cached, it returns a list of objects that will have to be invalidated before this
nanotransaction can execute.
fn poll_and_execute( work_queue_recv: Consumer<NandoActivation>, log_queue_send: Sender<NandoActivation>, object_tracker: Arc<ObjectTracker> )
pub(crate) fn get_input_channel_capacity(&self) -> usize
Auto Trait Implementations§
impl RefUnwindSafe for NandoExecutor
impl Send for NandoExecutor
impl Sync for NandoExecutor
impl Unpin for NandoExecutor
impl UnwindSafe for NandoExecutor
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request