pub struct PeerResourceTracker { /* private fields */ }Expand description
Per-peer resource tracking
Implementations§
Source§impl PeerResourceTracker
impl PeerResourceTracker
Sourcepub fn new(max_memory: u64) -> PeerResourceTracker
pub fn new(max_memory: u64) -> PeerResourceTracker
Create a new resource tracker
Sourcepub fn try_allocate(&self, bytes: u64) -> bool
pub fn try_allocate(&self, bytes: u64) -> bool
Add to memory usage, returns false if would exceed limit
Sourcepub fn memory_usage(&self) -> u64
pub fn memory_usage(&self) -> u64
Get current memory usage
Sourcepub fn record_sent(&self)
pub fn record_sent(&self)
Record message sent
Sourcepub fn record_received(&self)
pub fn record_received(&self)
Record message received
Sourcepub fn record_dropped(&self)
pub fn record_dropped(&self)
Record message dropped
Sourcepub fn messages_sent(&self) -> u64
pub fn messages_sent(&self) -> u64
Get messages sent count
Sourcepub fn messages_received(&self) -> u64
pub fn messages_received(&self) -> u64
Get messages received count
Sourcepub fn messages_dropped(&self) -> u64
pub fn messages_dropped(&self) -> u64
Get messages dropped count
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for PeerResourceTracker
impl RefUnwindSafe for PeerResourceTracker
impl Send for PeerResourceTracker
impl Sync for PeerResourceTracker
impl Unpin for PeerResourceTracker
impl UnsafeUnpin for PeerResourceTracker
impl UnwindSafe for PeerResourceTracker
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more