pub struct PooledInstance { /* private fields */ }Expand description
A pooled module instance with load tracking.
Implementations§
Source§impl PooledInstance
impl PooledInstance
Sourcepub fn new(id: usize, instance: ModuleInstance) -> Self
pub fn new(id: usize, instance: ModuleInstance) -> Self
Creates a new pooled instance.
Sourcepub fn record_request_start(&self)
pub fn record_request_start(&self)
Records a request start.
Sourcepub fn record_request_end(&self, latency_us: u64)
pub fn record_request_end(&self, latency_us: u64)
Records a request completion.
Sourcepub fn instance(&self) -> &ModuleInstance
pub fn instance(&self) -> &ModuleInstance
Returns the module instance.
Sourcepub fn load_factor(&self) -> f32
pub fn load_factor(&self) -> f32
Returns the load factor (0.0-1.0).
Sourcepub fn stats(&self) -> InstanceStats
pub fn stats(&self) -> InstanceStats
Returns statistics.
Sourcepub fn instance_mut(&mut self) -> &mut ModuleInstance
pub fn instance_mut(&mut self) -> &mut ModuleInstance
Returns the module instance (mutable).
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for PooledInstance
impl RefUnwindSafe for PooledInstance
impl Send for PooledInstance
impl Sync for PooledInstance
impl Unpin for PooledInstance
impl UnsafeUnpin for PooledInstance
impl UnwindSafe for PooledInstance
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